0% found this document useful (0 votes)
2K views14 pages

MANUAL picoCAD

picoCAD is a simple 3D modeling program for building low poly models with limitations suited for the PICO-8 platform. It allows placing basic 3D meshes and editing vertices to construct models, as well as applying textures in the texture view. Shortcuts and limiting excess polygons are recommended to avoid performance issues. The file format is simple text for easy portability between devices.

Uploaded by

JURAON
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views14 pages

MANUAL picoCAD

picoCAD is a simple 3D modeling program for building low poly models with limitations suited for the PICO-8 platform. It allows placing basic 3D meshes and editing vertices to construct models, as well as applying textures in the texture view. Shortcuts and limiting excess polygons are recommended to avoid performance issues. The file format is simple text for easy portability between devices.

Uploaded by

JURAON
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

picoCAD 

A tiny modeller for tiny models. Twitter  https://twitter.com/johanpeitz 


Version 1.0.1 Discord  https://discord.gg/hjXMammbPB 
Itch  https://johanpeitz.itch.io/picocad 

Welcome to picoCAD! 
picoCAD is a program to build and texture low poly 3D models. I needed something simple to 
create simple models and found all other programs bloated and overly complicated, so I decided 
to roll my own. 
 
Since picoCAD is built with PICO-8 it comes with pretty harsh limitations. This is fine, since it 
encourages the use of even less polygons. Be smart and creative and anything is possible! 

Credits 
Created by Johan Peitz, ​@JohanPeitz 
3D math and fill routines adapted from Frederic Souchu, ​@FSouchu 
Built on the PICO-8 platform created by Joseph White, ​@Lexaloffle 

Overview 
Use the following screens to get an overview of how to use picoCAD. But read on, there is a lot to 
discover! 

 
 
 

How to have a good time in picoCAD 


3D in PICO-8 takes up a lot of the available performance. This means it will start running slow if the 
models are too complex. Especially in build mode since the model has to be drawn four times. 
Here’s some basic tips and tricks to stay sane. 
  
● Plan ahead, decide on which volumes that will be needed early 
● Don’t use too many primitives, extrude when possible 
● Delete faces that won't be seen in the final export 
● If you have multiples of something (e.g. wheels on a car), only build one and copy it when 
everything else is done (including texturing it) 
● Build simple stuff 

   
Reference manual 

Basic controls 
Use mouse and keyboard to control all aspects of picoCAD. Using shortcut keys will greatly speed 
up the workflow. In general: 
 
Left mouse button  Select vertices or faces 
Hold X to select multiple 

Left mouse button + move mouse  Move whatever is selected 

Right mouse button  Bring up the context menu 

Space  Toggles 2x2 view or full view 

Esc  System menu (quit/windowed mode/etc) 

ctrl/cmd+Z  Undo last performed action 

Mouse wheel  Zoom in and out 

Arrow keys  Move whatever is selected 

Arrow keys  Move or spin the camera (when nothing is 


selected) 
 
For ease of use, most actions snap to a grid. This might feel cumbersome in the beginning but is of 
great help to make things manageable at the low resolution. 

   
File management 
picoCAD stores your work in text files. These are easily readable and editable in case you want to 
take your work elsewhere. Due to limitations in the pico8 platform, files will be stored in the 
following location, regardless where you load them from.  
 
Windows 
%appdata%/Roaming/pico-8/appdata/picocad/ 
OSX  
~/Library/Application Support/pico-8/appdata/picocad/ 
Linux  
~/.lexaloffle/pico-8/appdata/picocad/
 
This folder can be opened via the “View files” option in the ​☰ ​menu. 
 
Also, beware that there is no warning before quitting or overwriting unsaved work, so save your 
work often! 
 
For file handling and exports to work properly, please make sure you are running the program with 
administrator rights. 

Loading projects 
To load a previously saved picoCAD project, simply drag the txt file into the picoCad window.  
 
Please note: picoCAD cannot remember where you loaded the project from, so when saved it will 
end up in the same directory as everything else (see folders above). 

   
Views 
picoCad is structured around two views; build and texture. In the build view you place and 
manipulate meshes, and in the texture view you can move around UV coordinates. Toggle 
between the views with the top right buttons on the toolbar (or press V). 
 
Both views support all three different render modes: wireframe, fill, and texture. Swap between 

💡
them with the ▢ button. When in fill or texture mode, you can also toggle shading on or off with the 
button. 

Build view 
The build view shows whatever you’re building from 
three directions - one for each axis, and a fourth 3D 
view. The general idea is that you build your model by 
placing and manipulating meshes and vertices in the 
three views, seeing the result in the 3D view. In each 
viewport you can use the arrow keys to move the 
camera around. 
 
Press SPACE over the viewport you’re in to toggle 
between full screen and 2x2. Working in full screen can 
really help when your models become more complex. 

Moving meshes 
Grab a mesh with the left mouse button and drag it to 
where you want it. This moves the mesh’s origin point as well which is important if you start 
rotating things. 

Selecting and moving vertices 


Click vertices to select them. Select multiple vertices by holding down X. To select multiple vertices 
in one go, draw a rectangle with the left mouse button and any vertices inside the rectangle will be 
selected.  
 
Hovering over faces takes precedence over selecting vertices so if you can’t reach a specific 
vertex, hold X to force vertex selection. 
 
Any selected vertices can then be moved by either dragging them directly with the mouse, or by 
using the arrow keys. Moving vertices does not move the mesh’s origin point, which is important if 
you later rotate the mesh. 
Adding meshes 
Click the [+] button to choose a volume to add. Right clicking almost anywhere also opens the 
same menu. By using the available meshes creatively you should be able construct most things. 

Mesh and face menu 


Right click a face in a mesh to access additional mesh/face functionality.  
 
Color mesh  Set the color for the whole mesh used in fill mode. 

Extrude face  Extrude a face in the direction of it’s normal. For UV 
coordinates of the new faces, picoCAD makes a best guess. 
Adjust them in the texture view. 

Rotate mesh  Mesh is rotated around its center by 45 degrees. Use different 
viewports to rotate around different axises. 

Face props.  Opens a submenu with face specific options.  


 
Color  Set the color for this face only. 

Double sided  Face will be visible from both sides. 

No shading  Face will not be shaded when 


lighting is on. 

No texture  Face will use solid fill instead of 


texture when in texture mode. 

Render first  Face will be rendered before all 


other faces. 

Delete face  Delete the highlighted face. 

Delete mesh  Deletes the whole mesh of the highlighted face. 

Clone mesh  Creates a copy of the current mesh and adds it to the scene. 
Texturing view 
This view is split between a 3D viewport and the texture. 
Hover over faces in the model to see which part of the 
texture it is using. 

Manipulating UV coordinates 
Click a face to be able to show it’s UV coordinates on 
the texture. You can now drag the UVs to where you 
want them. To quickly rotate the UVs of a face, hover 
over it (or select it) and press R. 
 
To use more of the texture than what is shown in the 
window, scroll it with up and down arrows or the mouse 
wheel. 

Importing textures 
Simply drag and drop a 128x128 PNG texture onto the program to use it for texturing (this cannot 
be undone). Colors will be adjusted to fit the pico-8 palette, and the texture will be saved in the 
project file. 
 
Note that picoCAD needs some of the texture memory for internal use, so only the first 120 lines of 
the texture will be used.  

Bits and pieces 

Background color 
Use the palette button to choose the background color to use in the 3D viewport as well as which 
color to treat as alpha in texture mode.  

Mesh centre 
Each mesh has a centre point, represented by a red dot when you hover over the mesh with the 
mouse. When rotating the mesh, it will rotate around it’s centre. If you drag the mesh around, the 
center point will follow. To move the center point, select all vertices and move them - they will then 
be moved while the center point stays. 

Project size cap 


picoCAD is focused on small models and will restrict the data of your work to 16kB. An indicator 
will show up at the bottom of the screen when you’re closing in on the cap.  
Shortcuts and workflow tips 
Speed up your workflow by using these shortcuts: 
 
Select multiple vertices/UVs  hold X and keep selecting 

Select vertices inside meshes  hold X and select  

Disable snap to grid  hold Z when selecting/moving 

Swap render mode  M 

Toggle shading on/off  L 

Swap between build and texture views  V 

Rotate UVs  select face + R 

Export GIF rotating in opposite  hold X when starting a GIF export 


direction 

Toggle fullscreen viewport fullscreen  SPACE 

Extrude face  hover over a face + E 

Rotate mesh  hover over a mesh + R or T 

Show face property menu  hover over a face + F 

Save project  cmd + S 

Zooming  mouse wheel up/down 

Add a mesh  right click on an orthogonal viewport 

Reset zoom and pan  double click build view button 


 

   
Exporting to other formats 
picoCAD comes with a program called “toolbox” which 
allows you to export the picoCAD project files to various 
other formats. 
 
Launch the toolbox and drag and drop the project you want 
to export onto the program. Once loaded, choose the 
export option you want and the files will be created. 
 
picoCAD is not able to export pngs with alpha, so some 
post-editing may be needed on the texture. 
 
Please note that files will be overwritten without prompting so make sure you know what you’re 
doing.  

Thanks 
All the testers for helping me find gnarly bugs as well as ironing out the workflow (in no particular 
order): 
Antonio Menteguiaga, Pit, Waporwave, Jack Raymond, Jeiel Aranal, Khari Addison, 
Preston Bruner, Miguel Sánchez, Annette Pew, Woolion, Chi Wong, Johan Vinet, Thomas 
Leroy, errik, Riccardo Santangelo, and some who didn’t respond to whether they wanted 
their names in here. 
 
The PICO-8 community for being ever inspiring and supportive. 

   
Version history 
v1.0.1 
● picoCAD 
○ Added ability to disable snap to grid when moving vertices and meshes (for real this 
time) 
○ Added title to window 
○ Changed GIF save name to use project name (eg banana_0.gif) 
○ Removed outdated reference to desktop when saving gif 
○ Removed p8l export from main application 
○ Fixed model being wiped when reaching end of undo buffer 
○ Fixed faces occasionally being highlighted during gif export 
○ Fixed rotation via menu rotating around the wrong axis in some cases 
● toolbox 
○ Added functionality to export obj, mtl, png 
○ Added functionality to export p8l 
○ Added functionality to export png 
 
v1.0  
● Added ability to to disable snap to grid when moving vertices and meshes (hold Z) 
● Tweaked spin speed in model view to be a bit faster 
● Fixed crash when attempting to save with empty filename 
● Fixed some actions not creating undo states 
● Fixed textures not loading properly if only colors 0-9 where used 
 
v0.9.13 - RC4 
● Tweaked spin speed in model view to be a bit slower 
● Tweaked toast messaged to stay on screen a bit longer 
● Removed the * next to filename that was displayed if unsaved changes 
● Fixed normals getting funky when merging vertices (and other special cases) 
 
v0.9.12 - RC3 
● Added a dithered shading step for textures 
● Removed ability to save empty scenes. 
● Tweaked the size and position of some ui elements 
● Tweaked the colors used for the GIF watermark 
● Fixed rectangle select not working in model viewport 
● Fixed mesh center points not being drawn unless in wireframe mode 
● Fixed color and zoom settings in project file being ignored 
● Fixed project colors not being set correctly in some circumstances 
● Fixed double sided planes flashing during some circumstances 
 
v0.9.11 - RC2 
● Added a [+] button for simple mesh adding 
● Tweaked position of version string on about screen 
● Fixed color menu not showing if clicking too far to the right on a menu option 
● Fixed filename being displayed on top of save as prompt 
● Fixed meshes not being draggable in ortographic viewports unless in wireframe mode 
 
v0.9.10 - RC1 
● Changed positions of most UI elements 
● Removed ability to change render mode in orto views 
● Fixed config issue causing slow spinning gifs to cut short 
● Fixed gif menu showing up when clicking on a specific place 
● Fixed gif export being choppy if scene suffered from low framerate 
● Fixed vertices getting unselected when changing render mode 
● Fixed project size not being recalculated on undo 
 
v0.9.9 
● Added a cap on how much content can be put into a single scene (16kB) 
● Added toast message when hitting content cap 
● Added a visual cue when approaching content cap 
● Added different spinning speeds when exporting GIF 
● Added functionality to rotate GIF in opposite direction (hold X when selecting in menu) 
● Added ability to reset all views to default by clicking build view icon when already in build 
view 
● Removed zoom reset button (1:1) 
● Removed 1px border being applied to all viewports 
● Changed position of #picoCAD watermark not to collide with GIF tag on Twitter 
● Changed colors on message toast 
● Changed looks and content on About screen 
● Fixed undo buffer from being wiped if running out of memory 
● Fixed texture not being reset when starting new project 
● Fixed filename input not allowing numbers 
● Fixed being able to scroll texture too far 
● Fixed viewports ending up in a funky state when importing a project while in texture view 
 
v0.9.8 
● Added shortcut to face property menu (press F while hovering a face) 
● Added #picoCAD tag when exporting gif 
● Removed menu borders when exporting gif 
● Removed zoom percentage indicator 
● Removed limit when zooming out 
● Removed WASD mapping as is clashed with other keys and had different mapping on 
different systems 
● Removed ! indicator (cpu>100%)  
● Changed so that GIF export saves in the same directory as everything else 
● Changed menu option from OPEN to VIEW FILES 
● Fixed zoom levels not being set properly on loading a model 
● Fixed not being able to scroll texture with mouse wheel if a vertex was selected  
● Fixed shading being inverted on the back of double sided faces 
● Fixed crash caused by rotating a texture when no face was selected 
● Fixed crash caused by loading files too big (>32k-ish) 
● Fixed faces passing through the camera from being rendered twisted 
● Fixed views not resetting properly when starting a new project 
 
v0.9.7 
● Added ability to start new project from menu 
● Added ability to open folder where picoCAD saves everything 
● Added ability to scroll the texture with mouse wheel 
● Added ability to use WASD as well as arrow keys 
● Added window mode to be default on first launch 
● Added hovered UVs on textures being highlighted in the model viewport 
● Added ability to select vertices inside meshes buy holding down X 
● Added plane primitive 
● Reversed mouse wheel scroll direction 
● Adjusted perspectiveness to be less extreme 
● Adjusted vertex selection to standard interaction models 
● Fixed non-shaded textures not handling transparency correctly when lit 
● Fixed top left 8x8 of texture not being usable 
● Fixed cameras moving when entering filenames 
● Fixed UV selection getting messed up when rotating UVs 
● Fixed files being written to obscure pico8 path instead of sane location, new locations: 
○ Windows: % ​ ​AppData​%​/Roaming/pico-8/appdata/picocad/ 
○ OSX: /Users/​Yourname/​ Library/Application Support/pico-8/appdata/picocad/ 
○ Linux: ~/.lexaloffle/pico-8/appdata/picocad/ 
 
v0.9.6 
● Rolled back save fix, files are now saved as before (in mystery folder) 
● Added minimum and maximum to zoom levels 
● Added near camera clipping 
● Added mouse wheel zoom 
● Adjusted lighting settings 
● Adjusted the rotation speed when recording gifs to be 10% faster 
● Fixed 3D view not using perspective projection 
● Fixed unlimited undo buffer leading to out of memory crash  
● Fixed normals not being recalculated when dragging vertices 
● Fixed crash caused by zooming in until division by zero occurred 
● Fixed distorted frames appearing when recording gif of heavy models 
● Fixed visibility check sometimes being a bit off 
● Fixed crash caused by selecting “-------” from the menu 
 
v0.9.5 
● Added display of mesh origio when hovering a mesh in wireframe mode 
● Added ability to rotate meshes in both directions using R & T keys 
● Changed direction of movement when moving the camera with the arrow keys in an 
orthogonal viewport 
● Changed cylinder primitive to be on grid 
● Change pentagonal prism primitive to center around it’s origo 
● Adjusted light source to be slightly more from above 
● Adjusted mouse and vertex interaction to be more forgiving 
● Adjusted shading angles when using textures 
● Fixed files being written to obscure pico8 path instead of program root 
● Fixed color selection menu not resetting properly, causing the wrong things to be colored 
● Fixed crash caused by changing render mode with the M key while hovering a face 
 
v0.9.4 
● Optimised vertex pipeline for slight (10%) performance increase 
● Fixed viewports getting out of sync when moving camera in full screen  
● Fixed view buttons creating strange states when pressed repeatedly 
● Fixed texture coordinates getting messed up if texture was scrolled all the way down 
● Fixed undo state not being created when changing face properties  
● Fixed undo state not being created when cloning a mesh 
● Fixed crash caused when menu was opened in the model view but selected over the 
texture  
 
v0.9.3 
● Added individual face properties (back-face rendering, ignore shading, ignore texture, color, 
render order) for faces and access via menu 
● Added graceful error fallback on trying to import a non-picoCAD project 
● Fixed so that the full version number is visible on the credits screen 
● Fixed UV rotations not being stored in the project properly 
● Fixed the build menu being accessible from texturing view 
● Fixed deleting mesh not creating an undo state 
● Fixed p8l export concatenating data instead of creating a new file 
● Fixed hovering a face before entering the texture map conflicting with the selected face 
● Fixed model from rotating when scrolling the texture 
● Fixed uvs from not being selected if texture is scrolled 
 
v0.9.2 
● Added ability to scroll in texture view to use full texture 
● Added a default texture 
● Added ability to rotate face UVs 
● Adjusted shading palette for pink and peach 
● Adjusted model spinning speed when exporting to GIF 
● Removed ability to rotate meshes in 3D viewports 
● Fixed some primitives not spawning face up 
● Fixed default UVs for all primitives 
● Fixed so that texture doesn’t scroll when rotating model in texturing view 
 
v0.9.1 
● Fixed texture being 1px offset when reading from txt file 
● Fixed compatibility issues in txt file between mac and pc 
● Fixed crash when right-clicking selected vertices 
● Fixed crash when undoing into an empty scene 
 
v0.9 
● First beta release 
 

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy