Video yükleniyor...

Video Yüklenemedi

Ana Sayfaya Dön

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 görüntüleme • 3 ay önce •via X (Twitter)

73 Yorum

Gregor profil fotoğrafı
Gregor3 ay önce

@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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

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

Ryan Fitzpatrick profil fotoğrafı
Ryan Fitzpatrick3 ay önce

@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!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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

Ryan Fitzpatrick profil fotoğrafı
Ryan Fitzpatrick3 ay önce

@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.

robot 2.0 profil fotoğrafı
robot 2.03 ay önce

@threejs all i'm asking for is sunglasses achref

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs

Nicolas Norton profil fotoğrafı
Nicolas Norton3 ay önce

@threejs This is really good work.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Much appreciated 🙌

taigajim profil fotoğrafı
taigajim3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs much appreciated !

Vadim B profil fotoğrafı
Vadim B3 ay önce

@threejs Love this

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Glad you loved it ✨

Vadim B profil fotoğrafı
Vadim B3 ay önce

@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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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 🙌

SinfulMeatStick.eth profil fotoğrafı
SinfulMeatStick.eth3 ay önce

@josh_garrett_kc @threejs Mew @brandon_manus @DOCTORdrippNFT

Chetan Khulage profil fotoğrafı
Chetan Khulage3 ay önce

@threejs wow this is something interesting

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Glad you like it !

Meta__Architect profil fotoğrafı
Meta__Architect3 ay önce

@threejs Freaking insane!!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you 🙌

Manuel Arias profil fotoğrafı
Manuel Arias3 ay önce

@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 🫩

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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

AI Mastery Guide profil fotoğrafı
AI Mastery Guide3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thanks! I really appreciate it

AI Mastery Guide profil fotoğrafı
AI Mastery Guide3 ay önce

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

dewmap profil fotoğrafı
dewmap3 ay önce

@mrdoob @threejs

Vipin Pathak profil fotoğrafı
Vipin Pathak3 ay önce

@threejs 🫡🫡🫡

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs

Edwin Meza 🎬 profil fotoğrafı
Edwin Meza 🎬3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs glad u liked it ✨

Ozony.Tech profil fotoğrafı
Ozony.Tech3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thanks !

Alex Coulombe profil fotoğrafı
Alex Coulombe3 ay önce

@threejs Rad

KingDankKush profil fotoğrafı
KingDankKush3 ay önce

@threejs Nice!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thanks ✨

GreenRocket.app profil fotoğrafı
GreenRocket.app3 ay önce

@threejs added this to Fossy

Ebenezer profil fotoğrafı
Ebenezer3 ay önce

@threejs Super cool!🙌🔥

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you, i really appreciate it ✨

lalo 🐧 profil fotoğrafı
lalo 🐧3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you ! 🙌

Rushabh ⚡️ profil fotoğrafı
Rushabh ⚡️3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Glad that you liked this project !

Jon profil fotoğrafı
Jon3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you ! much appreciated 🙌

Sas van der Westhuizen profil fotoğrafı
Sas van der Westhuizen3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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

Sas van der Westhuizen profil fotoğrafı
Sas van der Westhuizen3 ay önce

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

lost in latency profil fotoğrafı
lost in latency3 ay önce

@threejs incredible work Chrio, i will test this!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

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

Fred Moon 🚀 profil fotoğrafı
Fred Moon 🚀3 ay önce

@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!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Glad that you liked this project ✨

GameGen profil fotoğrafı
GameGen3 ay önce

@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.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you so much ! i really appreciate it

Religion is poison profil fotoğrafı
Religion is poison3 ay önce

@threejs Nice job. This is the future.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thanks ✨

Barbakadze profil fotoğrafı
Barbakadze3 ay önce

@mrdoob @threejs Eastern European building generator.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@mrdoob @threejs Glad you liked it !

Sebastian Buzdugan profil fotoğrafı
Sebastian Buzdugan3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

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

Jim Whitehead profil fotoğrafı
Jim Whitehead3 ay önce

@threejs Super impressive!

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Glad you liked it !✨

Nawwara profil fotoğrafı
Nawwara3 ay önce

@threejs Yoooo this is crazyyyy

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you !

Day Day Up profil fotoğrafı
Day Day Up3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs glad you loved it 🙌

晚晚 profil fotoğrafı
晚晚3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thank you 🙌

Bram van Es profil fotoğrafı
Bram van Es3 ay önce

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

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@threejs Thanks ! much appreciated

Marcin Ignac profil fotoğrafı
Marcin Ignac3 ay önce

@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?

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

@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.

Chiro Visuals profil fotoğrafı
Chiro Visuals3 ay önce

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

Benzer Videolar