Voxel/cube terrain in Torque?
by William · in Torque 3D Beginner · 09/01/2013 (4:01 pm) · 24 replies
I was just wondering if voxel/cube terrain was possible in Torque.
#2
He also took all of his videos down.
But obviously it seems to be possible, to answer the question.
09/02/2013 (2:26 am)
He writes "This may be the last update for a while , due to my real life situation."He also took all of his videos down.
But obviously it seems to be possible, to answer the question.
#3
09/02/2013 (3:20 am)
William, do you mean voxelisation for sort-of-lifelike mesh formation, or macro voxels like Minecraft?
#4
09/02/2013 (11:50 am)
Macro voxels.
#5
Long answer: I'm not aware of anyone having done quite that you're after in Torque. BlockLand is kind of similar. I know Demolishun is using voxels for a prototype, but I'm not sure if they're the Minecraft sort.
You could do a naive version really quickly by placing convex blocks or TSStatics on a grid. Performance would degrade pretty quickly, I imagine. Your best bet is to roll some entirely custom C++ class that replaces the terrain entirely, and includes all its own voxel management, culling, efficient storage, etc.
09/02/2013 (11:50 pm)
Short answer: it's possible if you're willing to do it yourself.Long answer: I'm not aware of anyone having done quite that you're after in Torque. BlockLand is kind of similar. I know Demolishun is using voxels for a prototype, but I'm not sure if they're the Minecraft sort.
You could do a naive version really quickly by placing convex blocks or TSStatics on a grid. Performance would degrade pretty quickly, I imagine. Your best bet is to roll some entirely custom C++ class that replaces the terrain entirely, and includes all its own voxel management, culling, efficient storage, etc.
#6
09/03/2013 (4:43 am)
I've been working on a pack for this, but it's coming along slowly due to other work taking priority.
#7
09/03/2013 (6:05 am)
with EQ Next coming alone I guess theres going to be an explosion in demand for voxel type terrains :-)
#8
Actually the technology behind this is pretty old, it is just because now computers are powerful enough.
Cubes like in minecraft is a very primitive method, other solutions go more in detail like using octrees, dividing each cube for finer details or using a marching cubes algorithm to triangulate voxel-data so you get very organic surfaces.
09/03/2013 (8:42 am)
There are countless people developing things like that now.Actually the technology behind this is pretty old, it is just because now computers are powerful enough.
Cubes like in minecraft is a very primitive method, other solutions go more in detail like using octrees, dividing each cube for finer details or using a marching cubes algorithm to triangulate voxel-data so you get very organic surfaces.
#9
Check out PolyVox. It is something I will be working on in the future (don't hold your breath as I may not release it, still deciding on that). At this point I have done zero on this. I have researched and PolyVox is what Bill Vee used. It also allows for cubic and or smooth voxel mesh representations. It is designed for you to provide the data structure in each voxel. So it is extensible. The smooth mesh stuff interests me because I have a density value. Which can make the voxel more cube like or more smooth like. So i am hoping it can have a mixture. I would use cube like density for rock while the smooth density would be for sand. I am also unsure how it would handle transparent voxels like water. Polyvox also does marching cubes. The library will return you a mesh for rendering and collision.
The hard part will be networking this.
09/03/2013 (2:18 pm)
@William,Check out PolyVox. It is something I will be working on in the future (don't hold your breath as I may not release it, still deciding on that). At this point I have done zero on this. I have researched and PolyVox is what Bill Vee used. It also allows for cubic and or smooth voxel mesh representations. It is designed for you to provide the data structure in each voxel. So it is extensible. The smooth mesh stuff interests me because I have a density value. Which can make the voxel more cube like or more smooth like. So i am hoping it can have a mixture. I would use cube like density for rock while the smooth density would be for sand. I am also unsure how it would handle transparent voxels like water. Polyvox also does marching cubes. The library will return you a mesh for rendering and collision.
The hard part will be networking this.
#10
09/03/2013 (5:09 pm)
Thank you for the replies everyone!
#11
More procedural and editable worlds seem to be the future and on the long term a game engine without this feature will not be very competitive.
09/03/2013 (6:20 pm)
So since this is already a complete library under a liberal license we should really try to get it working under Torque.More procedural and editable worlds seem to be the future and on the long term a game engine without this feature will not be very competitive.
#13
09/04/2013 (10:21 am)
The Polyvox guys are adding this to Unity. So that may be an avenue for people who need this sooner. I don't see this happening soon here.
#14
But the problem is we would need someone who knows the Torque engine very good and be willing to make the interface so Torque can read the voxel data.
09/04/2013 (10:40 am)
On Torque this would have the advantage of a similar license, means being totally free, not everyone wants or can pay 1500$ for an engine.But the problem is we would need someone who knows the Torque engine very good and be willing to make the interface so Torque can read the voxel data.
#15
If I were to implement this feature in the Torque engine I would expect compensation through game sales and possibly even consider creating a stand alone voxel based game engine that people could license. At the outset (because of the amount of work it took to create ScriptT3D) a voxel implementation would NOT be rolled back into the engine right away. I would expect people to license that tech. Perhaps when a decent return on investment occurred I would go the route of ID software and make that technology open source. Of course I would stick with MIT at that point.
Off Topic:
If T3D (and T2D) is to survive we MUST figure out how to economize this community and bring outside money in. This means: games sales, tech sales, art sales, training sales, etc. Blender figured this out, so can we. GG has bent over backwards to help us out. Even releasing internal docs that show how to get the most out of Torque tech.
Expecting everything to be free will condemn your project.
09/04/2013 (12:49 pm)
Honestly it depends upon what you want. If you want a game now the $1500 would be well spent. I am tempted... If I were to implement this feature in the Torque engine I would expect compensation through game sales and possibly even consider creating a stand alone voxel based game engine that people could license. At the outset (because of the amount of work it took to create ScriptT3D) a voxel implementation would NOT be rolled back into the engine right away. I would expect people to license that tech. Perhaps when a decent return on investment occurred I would go the route of ID software and make that technology open source. Of course I would stick with MIT at that point.
Off Topic:
If T3D (and T2D) is to survive we MUST figure out how to economize this community and bring outside money in. This means: games sales, tech sales, art sales, training sales, etc. Blender figured this out, so can we. GG has bent over backwards to help us out. Even releasing internal docs that show how to get the most out of Torque tech.
Expecting everything to be free will condemn your project.
#16
I agree GG has done everything you could ask to help T3D and kudos to them, now we need a working plan of our own.
09/04/2013 (1:02 pm)
@Demolishun I agree, I like to believe that there is a lot of "goodwill" in my IPS product (Value vs. price is way worth it) but theres only so far you can go on goodwill. Even if I wanted to commercialize it, I'd estimate the GG community to 150-170 people (based on data from the T3D Magazine). It's simply not enough to earn a living off this engine, except for creating a game and selling it.I agree GG has done everything you could ask to help T3D and kudos to them, now we need a working plan of our own.
#17
The community is too small to make middleware effective, so we should try to move away from this model.
So there remains the donation models, which are often used for open source projects, so people donate money or their free time, but we would need to attract a bigger community for this and a support for a voxel type terrain would attract a lot of people I think.
Another solution would be to make small casual games, that can be made fast and ship them out for a few dollars, a very small amount will not hurt people and will give some income. With that I mean cut out the middleware, since for the final product there will be much more audience and I have seen quite some middleware products that came close to a complete game.
09/04/2013 (1:27 pm)
Economizing will be complicated, since the way it has been done before and how most others do it, like selling middleware, means things game makers will buy to speed up their process will not work for open source projects, because it will block the development.The community is too small to make middleware effective, so we should try to move away from this model.
So there remains the donation models, which are often used for open source projects, so people donate money or their free time, but we would need to attract a bigger community for this and a support for a voxel type terrain would attract a lot of people I think.
Another solution would be to make small casual games, that can be made fast and ship them out for a few dollars, a very small amount will not hurt people and will give some income. With that I mean cut out the middleware, since for the final product there will be much more audience and I have seen quite some middleware products that came close to a complete game.
#18
09/04/2013 (1:30 pm)
@Duion I'm very fond of the community buyout idea that a lot of community members are going with atm (e.g. Jeff Raab and the component system, be ready to back it btw it should be out soon) so you can get paid for your work, and the work gets released to the public. But again it takes a big enough community that have to be interested in the feature to earn enough money to be worth the while for the developer, and untill it is that we can't ask people to donate months of their time for free. Atleast not IMO.
#19
09/04/2013 (3:40 pm)
Quote:support for a voxel type terrain would attract a lot of people I thinkAbsolutely, but the question I ask at that point is: Do you re-brand and go the Unity route?
Quote:Another solution would be to make small casual games, that can be made fast and ship them out for a few dollarsYou are right there. I think T2D is better suited. T3D is not really geared to casual game development, but I could have tunnel vision in that respect.
Quote:I'm very fond of the community buyout idea that a lot of community members are going with atmI am unsure on this. What would a fully networked voxel engine on par with Minecraft tech buyout go for? That is NOT a small project. It would have to have infinite terrain in all (at least x & y and preferably z) directions and be FAST.
#20
So it may be more wise to keep the original license.
09/04/2013 (4:18 pm)
Sure with a liberal license people would be allowed to re-brand it as their own, but until they have no big workforce to make major improvements, they will not get very far with it, since others will find out where their work is derived from and will try to reproduce it.So it may be more wise to keep the original license.
Torque Owner Lukas Joergensen
WinterLeaf Entertainment
Not sure what his plans is with it tho.