Ciro Cardoso
@cirocardoso.bsky.social
250 followers 390 following 170 posts
Snr Generalist Freelance Artist @TheBlurStudio Previous: Goodbye Kansas, Axis, RealtimeUK | Rebelway & Gnomon Instructor | Sharing tips and tricks
Posts Media Videos Starter Packs
Reposted by Ciro Cardoso
dannyodwyer.bsky.social
noclip's PAX Panel is at 5pm Today at Leaf Theater

Project updates, special guetsts and we're giving away a bunch of nonsense too.

See you there!
noclipvideo.bsky.social
PSA: WE DID NOT USE AI IN OUR POSTER DESIGN

NOCLIP PAX WEST PANEL
SATURDAY @ 5PM
LEAF THEATER (ROOM 420) 🌿

-GIVEAWAYS
-ANNOUCEMENTS
-TRIVIA
-BANTER

SEE YOU THERE
cirocardoso.bsky.social
It has been a super busy week, but I managed to get back to my root-vine generator, optimize it a little bit more and adjust it so that I can use the Labs Tree Leaf Generator.

#houdini #vex #environment #3d #procedural
cirocardoso.bsky.social
#Houdini tip

If you want to switch automatically based on what is input into a switch node, you can use something as simple as this expression - npoints(0)==0 - basically, this will switch to input 1 if the input 0 has no points.
cirocardoso.bsky.social
The Scatter and Align node does something similar, but I believe my #VEX implementation handles it even better. The difference is that my implementation takes into account the size for each object I want to scatter.
Curious to hear your thoughts.
cirocardoso.bsky.social
I spent some time improving the scattering tool in #Houdini, focusing on collision detection. Then I wondered, what if instead of detecting collisions, we generated points in a way that they don't intersect at all?
cirocardoso.bsky.social
Thanks. I shared it on another post but here it is.
cirocardoso.bsky.social
A brief snapshot of how it functions.
cirocardoso.bsky.social
Creating a root system and implementing an offset mechanism to guide the root upward, avoiding intersections with the geometry. Initial steps.
Let me know if you would like to see the full setup.

#VEX #Houdini #WIP
cirocardoso.bsky.social
Back to it. Tweaking the collision detection a bit more, using a threshold value to determine the level of overlap. Still need to run a few more tests to check if this is a good and efficient approach.

#houdini #dev #environment #wip #vex
cirocardoso.bsky.social
The #OSL shader called Complex Fresnel is incredibly useful, allowing you to obtain accurate values for various metals. I'm currently working with gold, and what you're seeing here reflects the physically accurate value. It's a fantastic starting point!
cirocardoso.bsky.social
Adding some control for dirt and leaks
cirocardoso.bsky.social
Working on some #procedural materials in #houdini with Arnold.
You do need a PHD to use the Layer RGBA node in Arnold. 😅
cirocardoso.bsky.social
Had a thought in Houdini: what if you could convert the class attribute from a Connectivity node into letters? (0→A, 1→B, etc.)

Turns out a simple VEX snippet does the trick. It is a base-conversion from decimal to base-26. Not sure if it's the most efficient way, but hey, it works! 😅
#houdini #vex
cirocardoso.bsky.social
Back to materials with #Substance Designer. I am trying to recreate Pietra Serena.

#3d #texturing #wip #MadeWithSubstance
cirocardoso.bsky.social
Made a little bit more progress on this scatter tool. Now, not only you can paint an attribute, or even better you can use splines to add and remove areas.

#houdini #environmentart #wip
cirocardoso.bsky.social
When scattering grass over large areas, one trick I like is to squash grass allowing it to cover more ground without more instances. #houdini #environmentart
cirocardoso.bsky.social
First steps for a scattering tool. #houdini
cirocardoso.bsky.social
Having fun with #VEX and #Houdini.
cirocardoso.bsky.social
I was tired of @Substance3D Painter flagging nearly invisible UV overlaps on UDIM tiles.

So, I put together a VEX snippet to help with that.
Scale one or more UDIMs

It handles complex geometry beautifully (tested on 20 M+ poly meshes).

Grab it from my GitHub:
github.com/CiroCardoso/...
cirocardoso.bsky.social
I had a bit more time to work on the damage tool. After addressing the edge damage, it is now time to incorporate surface damage. Trying to be as procedural as possible, but also keeping in mind efficiency.

#3d #houdini #wip #environment
cirocardoso.bsky.social
Working on some optimization. Going from 32 to 5 seconds. This was a test looping through 60 assets. And yes, I know Labs Edge Damage does something similar but this is the basis for a more complex tool.
cirocardoso.bsky.social
Some #wip for a tool I am developing in #Houdini to add edge and surface damage. The primary objective is to perform an initial sculpting pass, typically done something like ZBrush.

#3d #procedural
cirocardoso.bsky.social
I’m incredibly proud to finally share "The Screaming of the Tyrannosaurus," our latest episode for Netflix's Love, Death & Robots. This project holds a special place as it was the final piece from the incredibly talented team at Axis Studios before the studio sadly closed its doors.
cirocardoso.bsky.social
Building my own YouTube downloader with Python. I am using the yt_dlp if anyone is interested

pypi.org/project/yt-d...