Game Development Community

Why No 3ds Max???

by Nick Husby · in Artist Corner · 10/09/2006 (12:41 pm) · 30 replies

I guess not a single person has ever wanted to export buildings from 3d studio since 1996.

Because I dont know about you, but I dont use 3d studio version 3.0!

If there is a solution to export DIF's from anything made in the last 10 years, please let me know, because it is hidden EXTREEMLY well...
Page «Previous 1 2
#1
10/09/2006 (12:46 pm)
Read the post wrong...bad morning...
#2
10/09/2006 (12:53 pm)
Game Level Builder works with Max 8. I do not know if it works with Max 9.
#3
10/11/2006 (2:20 pm)
Does this exporter export dif or just dts? Sorry for asking but I dont have max to test it out on and I wanted to know before passing it onto modellers.

Thanks
#4
10/11/2006 (2:25 pm)
A very brief glance at the doc shows this to be the dts exporter.

to export .map|.dif files from max is none trivial.

there are exporters. but they mostly do a bunghole job with the geometry.

you need to develop the content in the appropriate editor.

3dmax was not designed for bsp usage, and bsp was not designed with all geometry types in mind.
there are many constraints on the bsp format that max is not aware of.
#5
10/11/2006 (2:49 pm)
Game level Builder makes maps. The best tool to get them accurately into Torque is to load them into wed and then save them out again to convert with Map2dif.

Currently Torque doesn't support polysoup meshes well so if your a 3dsmax user and want to do something that relies heavily rendering technology other than CSG I'd recommend looking at another engine. Much depends on your teams coding skill. If you want something quick and easy to mod an existing game type well supported in Torque it may be worth persevering.

Check out Ofusion a commercial quality art pipeline and level editor for 3dsmax to Ogre3D to get an idea of whats out there.
#6
10/15/2006 (10:27 pm)
I've got 3ds max 8. I've spent alot of time learning it and I'm taking some classes at school. (one with torque, and one with 3ds max) and you'd think the two would combine at some point...

I'm comfortable with a complicated process to convert, but I would just really like a way to make detailed buildings and rooms. Maybe its just because I'm used to it, but I think 3ds is probubly the best for getting the details.

by the way, is there any way to convert from a dts to a dif? or manually edit the collision zones?
#7
10/15/2006 (11:53 pm)
I think you want to do to much with dif format nick. From what Ive read it limits you quite badly on detail. So what your wanting to do may not be possible.

You can create collisions in dts format. Though Im not sure how good that is. I read somewhere someone say it was 6x harder for the engines to deal with the collisions on a dts than dif. Not sure if thats true. If dts collisions were just as good though why did they put dif in?
#8
10/16/2006 (7:31 am)
What I have done in the past is create the base geometry for the rooms in Quark or 3D World Studio. This is the extremely simple skeleton, complete with the zones you designate. Then use map23ds (search and find on M. Fairfax's blog) to convert it to a 3DS model. Load it into your app (I use Lightwave, but it doesn't really matter what app you use, you will be exporting your details via an exporter anyway). Then detail it with all of the specific, detailed geometry you need and the collision boxes. You will then need to reconstruct it in TGE.

If I were much more serious about the prototypes I had been working on, I would have tried to write a scene to mission convertor so that I didn't have to reconstruct everything.

You could create detailed rooms, create collision boxes for the walls, details, etc, and then export them, but you will lose the benefits of zoning and such without an engine rewrite.
#9
10/16/2006 (11:21 pm)
As well as deal with extremely slow collision (in comparison to DIF collision), and very poor render culling when compared to what DIF gives you.

Many studios will build their structures as DIF's, and then possibly populate them with dts "props" such as furniture, non-collidable eye candy, and other related dts items within the DIF.
#10
10/17/2006 (12:15 am)
For example : UT2004. ;)
#11
10/17/2006 (12:19 am)
Unreal, Source, Quake, etc...
#12
10/17/2006 (7:32 am)
I think the problem with max is simply that Torque is written with BSP and CSG tech which is mostly outdated technology originaly for voodoo era cards. These use hundreds of tiny batches sent to the GPUinstead of grouping material meshes and combining into fewer large batches that are more efficient on modern hardware.

A more modern engine would only use BSP in its underlying structure for sorting out what gets rendered in a scene rather than rendering the visuals themselves which are more and more likely to be polysoup. You just need the right engine for the job, and Max makes for a great level building tool if you have the right engine that uses other techniques for rendering visuals.
#13
10/17/2006 (8:11 am)
Adrian I think that is one of the most logical and level headed things I have heard said with regards to a discussion such as this, nice job.
#14
10/20/2006 (8:37 am)
So in simpler terms, you are telling me Torque is not well suited for 3ds models due to the way torque renders?
How severe are the performance penalties caused by this?

Thanks for your input
#15
10/20/2006 (9:28 am)
You can use DTS and get away with about 10,000 - 30,000 triangles, but in order to get efficient collision you would have to make hidden proxy DIF geometry or create your own custom Collision library. We had one based of of OPCODE that worked quite well.

The other problem is that DTS wasn't developed with scenery in mind, so you limit what you can do visualy. Like shadow casing and recieving and limited multitexturing unless you decide to go with Tse which I'm not that familiar with.

My hope is that the TorqueX arbitrary collision support will eventually filter down to other versions of the engine, making it easier to work with Torque within 3DS max.

Out of the box, to get best results out of 3dsmax you would have to use DTS for scenery, and something like GTLB3 to make your scenery collision. The problem here is juggling the 2 different scales that are used. DIF has a different scale to DTS, DTS is 1:1 with max units whilst DIF is 32x larger. You then have the problem that allthough max2dif supports floats there is some rounding off, so converting you max scene can easily lead to trouble with brushes not quite matching up, and on occasion convex shapes becoming non convex and not appearing.

To be honest, I can't really recommend using max for building levels in torque, its a lot of extra work for artists, and often hit or miss whether your media comes out correctly. You can get past some of the lighting and shadow casting problems with the help of the torque lighting kit.

Another problem with DTS is that meshes are split into triangle strips and fans, which is great for older hardware, but means many small batches containg roughly a dozen tris each are sent to the GPU rather than having the single mesh sent in a single batch. This isn't too bad if you use DTS in moderation the way it was originaly intended, but if you try building an entire scenein DTS alone, you can easily be sending thousands of batched to the GPU.

This is one of the areas that I believe a lt of work has gone into with TSE. So hopefully that engine will be better suited to level building in max.
#16
10/20/2006 (12:04 pm)
That was much more helpfull.
I was intending to make buildings & interiors in 3ds.

as far as max2dif goes... does that work with 3ds version 8? if so, I have been completely unable to find it. my level of frustration is high, so I could have overlooked something. I'm going to post a more specific or clearer thread question.

thanks again.
#17
10/20/2006 (12:20 pm)
I would like a max2dif... for max 8.. one that works..
#18
10/20/2006 (12:40 pm)
Map2diff,
there is a file format titled *.map.
this file is generated by just about any bsp editing software.
there are a few different versions of the .map files.

map2diff converts this said text file (*.map) to the *.diff binary format that the engine utilizes.

so you wont find a map2diff for max.
you can maybe find a max2map that you can use a map2diff to convert.

Max is not the proper tool to use for this export.
it will be painfull.

it really is simple.


you are better off to give up on the max scene files.
untill you find a format or "system" for getting them into the engine.
(bsp is not the system to use for this type of geometry)


like why would you try to fit a vw bug motor into your abrams tank?
you are going to see some very poor performance.

Ogre has a nice scene exporter for 3dsmax and many other content creation applications.
#19
10/20/2006 (12:53 pm)
Quote:
I think the problem with max is simply that Torque is written with BSP and CSG tech which is mostly outdated technology originaly for voodoo era cards. These use hundreds of tiny batches sent to the GPUinstead of grouping material meshes and combining into fewer large batches that are more efficient on modern hardware.

A more modern engine would only use BSP in its underlying structure for sorting out what gets rendered in a scene rather than rendering the visuals themselves which are more and more likely to be polysoup. You just need the right engine for the job, and Max makes for a great level building tool if you have the right engine that uses other techniques for rendering visuals.

Most engines use the SAME technique torque does. What you are describing in your second paragraph is just how torque does it from a level creation standpoint. Its up to the level designers and artists to assemble the levels correctly.

DTS does support shadow types with the TLK, and 1.5 <-- out the box.

udn.epicgames.com/Two/BreakAwayExample/BA_bsp_space.gifAnd example from URT2k, and is just like how you should create levels and areas in torque.
Also, keep inmind, that the terrain will also block out rendering of unseen or blocked by terrain objects.

udn.epicgames.com/Two/BreakAwayExample/BA_bsp_entrance.jpg
This is a shot where only the underliyng structure is a BSP, the rest is all Static meshes (AKA .DTS)
udn.epicgames.com/Two/BreakAwayExample/bsp_space.jpg
Max, or polysoup is NOT best for large, portalised interior objects.


DTS is the best for scenery objects, just not structures, i don't know where this came from. The colision is conxex (Like most engines, and BSP will ALL WAYS be faster), supports mutable effects and treatments.

DTS also supports about 4 different object types in the engine with different rendering, and "weight" requirements in the engine, using a play derived object for a plant is not how to go about it (Extream example)

Quote:
Another problem with DTS is that meshes are split into triangle strips and fans, which is great for older hardware, but means many small batches containg roughly a dozen tris each are sent to the GPU rather than having the single mesh sent in a single batch. This isn't too bad if you use DTS in moderation the way it was originaly intended, but if you try building an entire scenein DTS alone, you can easily be sending thousands of batched to the GPU.

What??? Triangle strips are used to OPTOMISE shared vectors in meshes and cuts out redudiant positions of shares corners of meshes...

Example
Quote:
For the happy beginners out there, let's briefly recall what a triangle strip is. Say your mesh contains a list of connected triangles. A triangle is made of three vertex references, and in case of connected triangles, two of them may be shared from one triangle to another. The list of indices resulting from this sharing forms a triangle strip. For example those triangles :



012

123

234

345

are equivalent to a single strip :

012345


and another
Quote:A triangle strip is a series of connected triangles, sharing vertexes, allowing for faster rendering for computer graphics. They are optimized on most graphics cards, making them the most efficient way of describing an object. After the first three coordinates for the first triangle in the strip, each new triangle only has one more vertex, sharing two of the vertexes from the last triangle. This compactness also makes them faster to load into RAM, as well as requiring less disk space.

For four triangles, as seen in the diagram, without using triangle strips, they would have to be stored and interpreted as four separate triangles: ABC, BCD, CDE, DEF. However, using a triangle strip, it can be stored simply as ABCDEF.
upload.wikimedia.org/wikipedia/en/0/03/Triangle_Strip.png
www.integrityware.com/products/poplib/gen_tri_strips.jpg
DTS are not ment for entire scenes, on this we agree.

Orge3d isn't a game engine, its a rendering engine, game engines are collections of a bunch of parts. Orge is just one of those parts. It also has BSP.

Quote:
Is OGRE A Game Engine?
No. OGRE can be (and indeed has been) used to make games, but OGRE is deliberately designed to provide just a world-class graphics solution; for other features like sound, networking, AI, collision, physics etc, you will need to integrate it with other libraries, something several frameworks have done, and we have a collision / physics reference integration library as an example in our distribution.
#20
10/20/2006 (1:26 pm)
What tool are you using?

It appears to me, you may have created invalid brushes. Or, you are not matching up the edges correctly.
Page «Previous 1 2