🤑 Indie game store🙌 Free games😂 Fun games😨 Horror games
👷 Game development🎨 Assets📚 Comics
🎉 Sales🎁 Bundles
A jam entry

Graffiti 3DView game page »

3D Graffiti application for Oculus Rift + Leap Motion
Submitted by jscottk with 1 hour, 32 minutes before the deadline


CriteriaRankScore*Raw score
Please rate this entry based on your overall enjoyment.#174.3604.360

Ranked from 25 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.

What's the name of your experience?
Graffiti 3D

Please describe your creation.
This is a straightforward application with one purpose: enable you to doodle in 3d space with 3d material in a color scheme of your choice.

Street artists and the techniques they use to make their pieces jump off their canvases have inspired me for a long time. After following the oculus rift kickstarter and developing an interest in stereoscopic media, I realized an opportunity existed to enable the creation of free-hand art that literally has depth to it. To my surprise, nobody had created quite what I was looking for, so I went on a search for the best suitable 6dof input device and built it myself. This project is my first dip into this wide space of possibilities.

I created this over the course of a couple of weeks so it has some rough edges, but the major bugs have been worked out and it feels great. Please let me know if you run into any issues or have any suggestions.

Programming language?

Your web site or portfolio (optional)?



- Added new materials: neon glow material, diffuse clay material, and a generic metal material (set to white for silver, yellow for gold, and orange for copper).

- Added object importing. Users can now import custom objects (up to 65,000 vertices) to draw on.

- Added photosperes. Users can now load in custom 360 degree panoramic images as environments to draw within.

- Added bloom effects. Extremely shiny materials will now sometimes appear to glow slightly when reflecting bright light.

- Fixed some rendering issues; material lighting should look better.

- Added ability to turn off lights (fun with neon material).

- Added ReadMe UI for Leap Motion users (mouse/gamepad users can still access the ReadMe in the main menu).

- Updated to Unity 5.2f3, Leap Motion Core Assets 2.3.1, and Oculus (compatible with Oculus runtime 0.7+)

@Stephan Tanguay Thanks for giving it a shot! I'm glad you enjoy it :D I'm working on some updates right now that should solve some issues and add more flexibility to the app.

Great leap motion app, like that you added the hover menu. Very cool!

maita · 2 years ago

juego laty

- Fixed an issue with left handed mode; drawing should now properly work while left handed.

- Fixed an issue with drawing while both hands are in view. Users can draw as long as the Hovercast menu is not visible.

- Deactivated drawing while interacting with the Hovercast menu system (to avoid accidental drawing).

- Converted menu items to appropriate input types in the Hovercast menu system; shape selectors are now radio buttons, and the augmented reality button is now a checkmark.

- Changed "Lightness" to "Brightness" on the HSB color selector.

- Converted left hand controls to Hovercast menu (https://github.com/aestheticinteractive/Hovercast-VR-Menu)

- Added in-game color and size controls, so sizes.txt and colors.txt are no longer needed.

- Moved commonly used keyboard shortcuts (undo, clear canvas, export mesh, augmented mode) to the left hand menu.

- Converted "digital" thumb drawing trigger to "analog" control (the distance between the thumb and hand determines line width instead of simply triggers drawing). This allows for variable width brush-like strokes.

- Added passthrough camera/"augmented reality" access by pressing "p" key. Make sure "allow images" is selected in your leap motion driver before trying this.

- Added ability to export meshes by pressing "e" key.

- Fixed issues with undoing strokes. Now a "stroke" is considered to be one continuous drawn line.

- Made a variety of performance adjustments (such as making undo/export run on their own threads).

h4r3krsna · 2 years ago

I love the 3D bouquet in the gallery! This could totally be used like a 3Doodler if you could export a mesh for 3D printing. You'd have to manage the "impossible" colors made by showing each eye different hues and also guarantee that the shape to print is a single form with no floating objects since solid printers can only shape a lump. I am amazed by manipulating a digital space using hands and seeing the hardware accurately reproduce the recordings of your relative spatial position! CAD will never be the same again!!

JeffreyJacobson · 2 years ago

Excellent concept, even if it's not a new idea. Simple, straightforward, and robust. It tolerates the poor performance of the leap rather well.

I will be showing it at our BostonVR meetup tomorrow as an example of what can be done with hand tracking.

dethaholic · 2 years ago

this is a brilliant medium I can use to protest huge coorperations without getting in trouble. I also see it's value in many other ways.

lindalou · 2 years ago


Fixed another issue:

- Token on user's hands properly update when hands come into view now.

- Further reduced latency.

Fixed a few issues introduced with the last update.

- Removed major source of latency I inadvertantly added with "Optimize Mesh"

- Fixed end caps so tube backfaces are no longer visible anymore

Another update:

- Added ability to undo strokes by pressing left ctrl + z

- Attempted to further reduce latency by doing a variety of small optimizations. If anyone can help me get dynamic batching to work in Unity Free, let me know!

- Changed sizes.txt to be in centimeters (instead of meters) and updated default sizes to be a bit smaller.

Updated to allow users to specify a custom sequence of brush sizes (in meters) using sizes.txt.

Great ideas Helios! I had considered allowing users to specify their own range of brush sizes, and you just inspired me to go code it :)

I like the box fade idea... I'll play with that a bit and see if I can make it get out of the way more.

Good start! It's fun to paint in 3D. I like using one hand to draw and the other to change tools, wish I had more control over how it changed. Love the interaction box. Maybe it could fade away or mostly-away once you start drawing and only show up when you move your head around?

Updated again! Changes were:

- Added line shape feedback by changing the shape of the token in the user's palm to match the shape of the material they're depositing.

- Fixed issues with MacOSX and Linux builds by moving config.txt and colors.txt inside the build folders.

- Fixed issues with thumb pinch not being recognized; the program now triggers thumb actions when users bring their thumbs to their palms as well as bring their thumbs to the sides of their hands.

@jdneidig: I appreciate it, thanks for trying it!

Great Job! Very fun to play!

@ksiva thanks for trying it out, I appreciate the feedback! Instead of curling your thumb in toward your palm, try bringing your thumb closer to your index finger first knuckle... I've noticed that gesture is robustly detected but brining it toward the palm isn't. I'll update it tonight to also work with curling the thumb in toward the palm (and fix that Mac issue).

Thanks again.

ksiva (View their submission) · 2 years ago

This is surprisingly cool and satisfying! A few issues: 1) On Mac, you have to copy the colors.txt file to the MAC_OSX folder for them to work. 2) I'm having a lot of trouble switching colors, curling my left thumb in doesn't work most of the time (making a fist sometimes does). 3) There's not much feedback on which line shape is chosen, maybe change the shape in the palm? But regardless, nice work!!

Removed (hopefully) the last major source of latency while drawing. Framerates should now stay above 75FPS on most machines most of the time.

Added support for impossible colors! Now users can specify a color for each eye within the colors.txt file (see README.txt)

Also, updated leap motion assets to fix latency issue associated with the old assets.

Thanks Hereson! It's still in its early stages; I think it can get a lot cooler :) I will definitely be working on this for quite some time. Speaking of which, I just uploaded another update:

- Added interaction volume box wireframe in front of the camera to make it easier for users to tell where the leap can track their hands with high confidence. This can be hidden by pressing "b" or changing the "InteractionBox" line in config.txt

- Removed some latency while drawing.

- Added "end caps" to all lines so backfaces of tubes are no longer visible and black unwanted artifacts are reduced.

I'll probably never call this "done".

This is pretty cool ;o!

One more (hopefully last) update:

- Added visual feedback of brush head size by scaling the token in the user's palm proportionally to the brush.

- Fixed issues with clearing the canvas using spacebar; the brush properties no longer reset and the drawer no longer crashes in some circumstances.

Updated again to resolve some (nasty) unnecessary latency while hands are in view.

Another quick update: the Mac OSX and Linux folders are included in the zip file now.

Thanks for the update

I just uploaded a new build to address some major issues that previously existed in the program. The changes were:

- Added colored marker to palm of hands to indicate current color being deposited.

- Added support for left-hand users through the "config.txt" file

- Added hotkey to clear the canvas (spacebar)

- Fixed an error caused by drawing while cycling through shapes (the deposited material no longer disappears)

- Reduced the likelihood of the program failing to recognize a thumb pinch

- Reduced border width on shader to attempt to fix an error that sometimes occurs when the oculus rift starting position is calibrated off.

That's about it! As always, I'm interested in hearing any issues/suggestions you might have.

@Cade Peterson: glad you enjoyed it :D I can't wait to see some of the interesting stuff people will create with this and similar software.

LeapMotion · 2 years ago

Painting in 3D just blew my mind. *blown*

@mechabit thank you! I absolutely intend to add left handed support and a handful of other helpful features soon.

nice drawing app! add left handed support!

Log in with an itch.io account to leave a comment