Friday, March 17, 2017

Logging the Creation of a Beast -- the Good, the Bad, and the Template Metaprogramming.

Re: Friday, March 17, 2017

Postby Vartul » Tue Mar 21, 2017 1:51 am

Doesn't Voxel Farm have CSG?

Wait, I just checked, actually it doesn't. But the creator seems to have solved the same problem using different tools (using L- systems I think?). Here are some blog posts he's made that discuss his approach-

Video with spherical subtraction- https://www.youtube.com/watch?time_continue=49&v=QnbUoU_UIaM

Some blog posts where he answers comments about CSG-

https://procworld.blogspot.in/2012/04/room-with-angle.html

https://procworld.blogspot.in/2012/08/producing-complex-shapes.html

Are these any help Josh?
User avatar
Vartul
Captain
 
Posts: 586
Joined: Sun Dec 01, 2013 3:32 am


Re: Friday, March 17, 2017

Postby JoshParnell » Tue Mar 21, 2017 9:35 am

Thanks for the various replies on CSG :geek:

@Silverware: That sounds very interesting, I will try to have a look at what they're doing. If UE4 is using it for serious stuff they must have a robust and performant solution...!

@Vartul: Voxel Farm is using volumetric CSG & surface extraction. That's how I would do it right now if I needed an asteroid base, for example. The reason Miguel's solution might actually work for a complex cave through an asteroid is that he's developed literally the most advanced voxel tech in existence. His magic is in his ability to compute & store fields incredibly quickly + his ability to extract surfaces that are higher-quality (because he's using Dual Contouring IIRC, not a simple technique like Marching Cubes or Surface Nets). So TL;DR: it's not really an option for LT. He's spent many years building that tech (a whole engine around it); it's not just a new algorithm for CSG or anything. And the L-systems are used for generating procedural geometry, not for CSG :)

(Yes, I keep up with that guy, he's on the 'best of the best' list in my head)

@Astearon: Sadly not an option. Several problems: abandoned, using C++ (11 :cry:), using arbitrary-precision numeric libraries (GMP). Biggest problem being that it's incomplete/abandoned :ghost:
“Whether you think you can, or you think you can't--you're right.” ~ Henry Ford
User avatar
JoshParnell
Developer
 
Posts: 4256
Joined: Sun Oct 07, 2012 3:06 pm
Location: Baton Rouge, LA

Re: Friday, March 17, 2017

Postby Vartul » Tue Mar 21, 2017 10:24 am

JoshParnell wrote:@Vartul: And the L-systems are used for generating procedural geometry, not for CSG :)


Whoops, that's what happens when one is insufficiently nerdy. :shifty:
Thanks for the reply anyway Josh. I have been following his blog for many years too. It's incredible what he's managed alone. I hear he has a team now though.
User avatar
Vartul
Captain
 
Posts: 586
Joined: Sun Dec 01, 2013 3:32 am

Re: Friday, March 17, 2017

Postby Silverware » Tue Mar 21, 2017 2:18 pm

JoshParnell wrote:@Silverware: That sounds very interesting, I will try to have a look at what they're doing. If UE4 is using it for serious stuff they must have a robust and performant solution...!


Unreal has had it in since the first version iirc.
It'll be a slog, but if you REALLY want to get CSG shit done, then it'll be totally worth it.
Image
Image
User avatar
Silverware
Vice Admiral
 
Posts: 2954
Joined: Sun Sep 07, 2014 3:23 pm
Location: Goattown-Three, Sigma Six, Goat Space

Re: Friday, March 17, 2017

Postby Talvieno » Tue Mar 21, 2017 2:51 pm

I don't think CSG is planned for LT 1.0.
Image
Have a question? Send me a PM!
User avatar
Talvieno
Community Manager
 
Posts: 8178
Joined: Fri Apr 11, 2014 6:50 pm
Location: North GA, USA

Re: Friday, March 17, 2017

Postby Employee 2-4601 » Wed Mar 22, 2017 2:38 am

JoshParnell wrote:Fun UI times are not over :)
Hooray!! :)
Employee 2-4601
Lieutenant Commander
 
Posts: 134
Joined: Sat Dec 13, 2014 7:19 am

Re: Friday, March 17, 2017

Postby Silverware » Wed Mar 22, 2017 1:55 pm

Talvieno wrote:I don't think CSG is planned for LT 1.0.

No, but if you look at how dejected he seemed in his message about how he couldn't get it to work they way he wanted to...
Then I expect he actually intended to use it along with platemeshes for his ship construction and asteroid stuff.
Image
Image
User avatar
Silverware
Vice Admiral
 
Posts: 2954
Joined: Sun Sep 07, 2014 3:23 pm
Location: Goattown-Three, Sigma Six, Goat Space

Re: Friday, March 17, 2017

Postby Talvieno » Wed Mar 22, 2017 2:07 pm

Josh never intended to use it as part of a real-time damage mechanic for either ships or asteroids. He did, however, intend to use it for creating asteroid bases and carriers. He couldn't find it, though, and eventually seemed to abandon it.
Image
Have a question? Send me a PM!
User avatar
Talvieno
Community Manager
 
Posts: 8178
Joined: Fri Apr 11, 2014 6:50 pm
Location: North GA, USA

Re: Friday, March 17, 2017

Postby Silverware » Wed Mar 22, 2017 2:27 pm

Talvieno wrote:Josh never intended to use it as part of a real-time damage mechanic for either ships or asteroids. He did, however, intend to use it for creating asteroid bases and carriers. He couldn't find it, though, and eventually seemed to abandon it.


Who said anything about damage?

The best way to handle damage is two model layers, Armor and Structure, and dynamic transparency and decals for damage.
Gives you the look of losing armor and showing substructure, without dynamic model changes which are FAR more expensive.


I would however expect him to use it in his ship generation, as it allows him to form single meshes, although with triangles being basically random, it wouldn't take to the method above so well. Dynamic textures on multiple tris that are not hand crafted is a hard problem.


Hopefully UE4 has some stuff he can make use of, I can see some massive gains in visual quality of models if he does manage it.
Image
Image
User avatar
Silverware
Vice Admiral
 
Posts: 2954
Joined: Sun Sep 07, 2014 3:23 pm
Location: Goattown-Three, Sigma Six, Goat Space

Re: Friday, March 17, 2017

Postby KingMoo » Thu Mar 23, 2017 3:09 am

JoshParnell wrote:he's on the 'best of the best' list in my head


Life goals
KingMoo
Ensign
 
Posts: 13
Joined: Thu Aug 29, 2013 4:07 am

Re: Friday, March 17, 2017

Postby N810 » Fri Mar 24, 2017 4:56 pm

JoshParnell wrote:Thanks for the various replies on CSG :geek:
....
@Vartul: Voxel Farm is using volumetric CSG & surface extraction. That's how I would do it right now if I needed an asteroid base, for example. The reason Miguel's solution might actually work for a complex cave through an asteroid is that he's developed literally the most advanced voxel tech in existence. His magic is in his ability to compute & store fields incredibly quickly + his ability to extract surfaces that are higher-quality (because he's using Dual Contouring IIRC, not a simple technique like Marching Cubes or Surface Nets). So TL;DR: it's not really an option for LT. He's spent many years building that tech (a whole engine around it); it's not just a new algorithm for CSG or anything. And the L-systems are used for generating procedural geometry, not for CSG :)
...


I remember years ago, I started following you and Miguel around the same week. :mrgreen: :mrgreen:
and both of you have developed some amazing and unique game engines.
"A sufficiently advanced technology is indistinguishable from magic."
- Arthur C. Clarke
User avatar
N810
Captain
 
Posts: 688
Joined: Mon Nov 26, 2012 3:20 pm

Previous

Return to Dev Logs



Who is online

Users browsing this forum: Google [Bot] and 5 guests