Video wird geladen...

Video konnte nicht geladen werden

Zur Startseite

This is an opensource fully procedural building generator running using Three.js . Building customization, (GPU instancing). Real-time snow, rain & wet surfaces. I reverse-engineered a Blender geometry nodes graph to TypeScript. Source code :

88,997 Aufrufe • vor 3 Monaten •via X (Twitter)

73 Kommentare

Profilbild von Gregor
Gregorvor 3 Monaten

@threejs the coordinate flip from blender's Z-up to three.js Y-up is the part that kills you quietly. spent a day chasing rotations that looked right on one axis and broken on every other before i caught it

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Totally relatable, May all the softwares be united in terms of axis 🤣

Profilbild von Ryan Fitzpatrick
Ryan Fitzpatrickvor 3 Monaten

@threejs you the boss! I was just in need of some buildings for the race track, these are perfect for that mid density residential/commercial parts of town I'm missing. Going to try and populate these along a spline road. Will post results back!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks man ! if the performance drops try to look for modular assets for less complex building and u can use the project as a reference, if people likes it i might release a good low poly with some realisitc PBR materials for improved performance

Profilbild von Ryan Fitzpatrick
Ryan Fitzpatrickvor 3 Monaten

@threejs for sure will need some LOD, with mrdoob's downtown TSL buildings I managed to build some simple LOD's then load in the TSL building for higher detail.

Profilbild von robot 2.0
robot 2.0vor 3 Monaten

@threejs all i'm asking for is sunglasses achref

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs

Profilbild von Nicolas Norton
Nicolas Nortonvor 3 Monaten

@threejs This is really good work.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Much appreciated 🙌

Profilbild von taigajim
taigajimvor 3 Monaten

@threejs oh man love this. used to do procedural buildings in 3ds max, but this is so much faster

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs much appreciated !

Profilbild von Vadim B
Vadim Bvor 3 Monaten

@threejs Love this

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Glad you loved it ✨

Profilbild von Vadim B
Vadim Bvor 3 Monaten

@threejs building my own next! did some prototyping in houdini but speed of cooking all nodes kinda kills all the fun in this process. I want realtime

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Well, I gotta be jealous, i always wanted to learn houdini, it's quite crazy the complexity that it can handle. for real-time approaches unreal & threejs are the best picks 🙌

Profilbild von SinfulMeatStick.eth
SinfulMeatStick.ethvor 3 Monaten

@josh_garrett_kc @threejs Mew @brandon_manus @DOCTORdrippNFT

Profilbild von Chetan Khulage
Chetan Khulagevor 3 Monaten

@threejs wow this is something interesting

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Glad you like it !

Profilbild von Meta__Architect
Meta__Architectvor 3 Monaten

@threejs Freaking insane!!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you 🙌

Profilbild von Manuel Arias
Manuel Ariasvor 3 Monaten

@threejs Never done this before... how it works on mobile? The more I see projects like this I just find out i need to study more... f 🫩

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks for your comment, i’m not sure how it performs on mobile cause mainly i done it for pc but i think with some geometry optimizations u can get one running smoothly on it

Profilbild von AI Mastery Guide
AI Mastery Guidevor 3 Monaten

@threejs Reverse engineering a whole Blender geometry graph into TypeScript is a serious amount of work.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks! I really appreciate it

Profilbild von AI Mastery Guide
AI Mastery Guidevor 3 Monaten

@threejs That reverse engineering skill alone is worth studying honestly.

Profilbild von dewmap
dewmapvor 3 Monaten

@mrdoob @threejs

Profilbild von Vipin Pathak
Vipin Pathakvor 3 Monaten

@threejs 🫡🫡🫡

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs

Profilbild von Edwin Meza 🎬
Edwin Meza 🎬vor 3 Monaten

@threejs God Deam this is so fire 🔥 I’m definitely using this

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs glad u liked it ✨

Profilbild von Ozony.Tech
Ozony.Techvor 3 Monaten

@threejs This is pretty cool! I will try it out asap!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks !

Profilbild von Alex Coulombe
Alex Coulombevor 3 Monaten

@threejs Rad

Profilbild von KingDankKush
KingDankKushvor 3 Monaten

@threejs Nice!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks ✨

Profilbild von GreenRocket.app
GreenRocket.appvor 3 Monaten

@threejs added this to Fossy

Profilbild von Ebenezer
Ebenezervor 3 Monaten

@threejs Super cool!🙌🔥

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you, i really appreciate it ✨

Profilbild von lalo 🐧
lalo 🐧vor 3 Monaten

@threejs with the github?!? you're too kind !!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you ! 🙌

Profilbild von Rushabh ⚡️
Rushabh ⚡️vor 3 Monaten

@threejs Played around 20 minutes with it. Loved it :)

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Glad that you liked this project !

Profilbild von Jon
Jonvor 3 Monaten

@threejs Thank you, you will be credited with this great work!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you ! much appreciated 🙌

Profilbild von Sas van der Westhuizen
Sas van der Westhuizenvor 3 Monaten

@threejs Any chance you can stand this up as a GitHub page that can be viewed in-browser?

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs well, i didn’t want to host it cause i was concerned that i might get a huge bill cause the source files are quite heavy 🤣 i never done github hosting, i always use aws or cloud flare, ill check it out and see if its the same

Profilbild von Sas van der Westhuizen
Sas van der Westhuizenvor 3 Monaten

@threejs If it's all just static content you should be good 💪🏻

Profilbild von lost in latency
lost in latencyvor 3 Monaten

@threejs incredible work Chrio, i will test this!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@lostinlatencyX @threejs Thank you, i really appreciate it ✨

Profilbild von Fred Moon 🚀
Fred Moon 🚀vor 3 Monaten

@threejs thanks for sharing, I absolutely love this! i took liberty to compile it and serve it online for anyone who wants to try it, hope it's ok!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Glad that you liked this project ✨

Profilbild von GameGen
GameGenvor 3 Monaten

@threejs Reverse-engineering a Blender geometry nodes graph into TypeScript is wild, and the results speak for themselves. That Hong Kong tenement look with the AC units and clutter is so convincing, and the wet-surface pass really sells the atmosphere. Huge respect for open-sourcing it.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you so much ! i really appreciate it

Profilbild von Religion is poison
Religion is poisonvor 3 Monaten

@threejs Nice job. This is the future.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks ✨

Profilbild von Barbakadze
Barbakadzevor 3 Monaten

@mrdoob @threejs Eastern European building generator.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@mrdoob @threejs Glad you liked it !

Profilbild von Sebastian Buzdugan
Sebastian Buzduganvor 3 Monaten

@threejs where ports break is seed stability, does threejs match blender across builds

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs seeds won't match the same seds in blender cause the nodes are translated to typescript and the randomization alghorithm is different

Profilbild von Jim Whitehead
Jim Whiteheadvor 3 Monaten

@threejs Super impressive!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Glad you liked it !✨

Profilbild von Nawwara
Nawwaravor 3 Monaten

@threejs Yoooo this is crazyyyy

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you !

Profilbild von Day Day Up
Day Day Upvor 3 Monaten

@threejs This is awesome, thanks for open-sourcing it!

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs glad you loved it 🙌

Profilbild von 晚晚
晚晚vor 3 Monaten

@threejs 把几何节点翻成 TS 这步挺狠的

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thank you 🙌

Profilbild von Bram van Es
Bram van Esvor 3 Monaten

@threejs I see all of these efforts converging into new levels for counterstrike go. One day.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Thanks ! much appreciated

Profilbild von Marcin Ignac
Marcin Ignacvor 3 Monaten

@threejs How did you go about translating more advanced geometry nodes concepts like subgraphs and context providers (where eg position node pulls from currently processed mesh)? Or was source project simpler data flow graphs?

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs I actually sidestepped building a general field evaluator. Instead of emulating Geometry Nodes' lazy field/context system, I flattened the graph into eager TypeScript and proved it matched Blender numerically.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs The tricky part wasn't fields themselves it was preserving Blender's re-indexing after every Separate/Join, since that's where eager implementations silently diverge. This graph was also fairly feed-forward (no repeat/simulation zones), so that approach was viable.

Profilbild von Chiro Visuals
Chiro Visualsvor 3 Monaten

@threejs Context providers (like Position/Index) just became values from the current array/loop index once the domain was fixed.

Ähnliche Videos