Game Development Community

Everything about Constructor

by Apparatus · in Torque Game Engine · 09/15/2008 (11:21 am) · 92 replies

IGPSET0921975

This is the password for the Interior pack support files, now free to download for Torque SDK owners.

PDF Guide only.

Hi there

I thought about this for some time now and I think is time to take matters into our own hands. Following my previous plan / pack release I decided to take the Constructor documentation one step further. The nicest thing that can happen is a complete guide to Constructor book and a fully documented TDN Constructor section. A big plan but if we don't try, well..

All you need to do is list here every issue you might have with Constructor and / or ways you bypassed known bugs and successfully exported your Interiors.

So please keep this as simple as possible and do not deviate to other topics.

The least we can achieve is share information and be aware of what Constructor can do for our projects, limits and a few tricks here and there.

I will keep an eye on this forum and gather / organize all the data.

Have fun with Torque!

Apparatus
Page «Previous 1 2 3 4 5 Last »
#1
09/15/2008 (12:09 pm)
@Apparatus -

Good idea! You may get a bigger response in one of the constructor forums:

www.garagegames.com/mg/forums/result.forum.php?qf=203

There's already a few bug and workaround threads, but they're older and the bugs may have been fixed already in 1.051, so I'm all for a new thread.

Jaimi
#2
09/15/2008 (12:13 pm)
Right, there are quite a few posts up there but I want to make sure this one doesn't get buried and also work on issues 'to date'. Thanks.
#3
09/15/2008 (1:46 pm)
It would be a tremendous help if it could be listed what kind of textures and materials can be used.
- and most important how.

How is bumpmaping, detailmapping and normalmapping and materials applied and how it's done for each engine.

It's very time consuming to go excavating for it in the forums... (the valley of kings is a big place)

Peter
#4
09/15/2008 (2:42 pm)
Materials are not supported in Constructor. However, they are of course supported in TGEA. To get this working, you would need to create a material.cs file with the definitions of the materials used in your map. The easiest way to do it is to make the material the same name as the texture - Here's a link that describes how to create materials:

tdn.garagegames.com/wiki/TSE/Materials/Overview
#5
09/15/2008 (2:53 pm)
I'm not sure if these fall into the category you're after but I've had a couple of recurring problems with constructor while learning the basics, although I've not reported them yet as I was trying to be sure it wasn't a result of something I'm doing wrong.

I'm working under Vista x64, which I'm not ruling out as a contributing factor. My only workaround so far for them is frequent multiple saves so when things go wrong I can roll back through multiple previous points to find out where things went wrong and work forward from there.

Infrequently, my screen simply goes black and after about 30 secs I get a notification that the video drivers have stopped working. This only ever occurs in Constructor and there's no apparent common cause, I've even had it happen while afk. Latest ATI drivers, although ATI under Vista seems to be a common factor in Constructor problems...

Secondly, I seem to frequently get brushes that behave oddly, it's hard to define exactly what the problem is, generally speaking some faces refuse to extrude, the brush can be moved but things behave oddly and the brush refuses to be deleted. Solution - Roll back to a previous good save.

I also have problems when for no apparent reason click to select a face or brush simply stops working. I can click and drag to select brushes or faces (although it selects multiple faces, back faces and even faces that are outside the selection area.) Solution - Reset all default constructor preferences (use the delete prefs.bat script) and roll back to a previous good save. This one baffles me, I make no changes to the preferences, but resetting them is the only way to fix it.

The main thing that troubles me is that no-one else seems to have reported anything similar to the above.
#6
09/15/2008 (3:19 pm)
Ross, Vista is well known for 'stability' but lets not dig into that now. I experienced about the same errors you are reporting ~ without the black screen / drivers issue bit (Vista..);

Let's keep in mind the nature of Constructor modeling; if you have a bad experience with the extrude tool, try a workaround; select the brush, lock the unselected other brushes (just in case) with a quick CTRL+ALT+L and get in either face or vertex mode; If you are in face mode, CTRL+1 will deselect the face and select the corresponding vertices; CTRL+2 does the opposite. When you learn to move around, select, deselect, hide, unhide, lock unlock, it will be a snap to edit quite complex brushes without any extrusion at all;

Use the snap, always It's a golden rule. If it jumps too much for your taste, make the snap really small, 0.01.

You can create complicate structures if you want but it's best to have control over each part, because even if it looks ok in constructor at export you can get in serious trouble. So, one brush at a time. I rarely even use SHIFT+drag to duplicate+move a brush in the scene.

So we can say that a first Golden rule is Keep it simple; In the same row we can add Save often (or backup) and Snap to Grid.

Everyone can do it, all it takes is patience and effort.
#7
09/15/2008 (3:50 pm)
Thanks for the tips Apparatus, got to admit I haven't tried working with locking brushes yet except for a couple of brief tests, I need to get those shortcuts into my head to speed things up.

Hope it doesn't seem like I was picking fault, I actually really like Constructor and I'm standing by it even though people keep pushing me towards 3DWS. I think Constructor got a bit of a bad rap in the early stages and a lot of people have formed opinions prior to the huge improvements Jaimi has made. It's a young application in a mature playing field but I reckon it's got plenty to offer.
#8
09/15/2008 (3:56 pm)
Ross, this is why I started this 'let's make it right' thing. And I am glad people get dragged back in, one by one.
#9
09/15/2008 (3:59 pm)
@Ross - It sounds like your brush is bad - have you tried to reset it? Extruding is a very useful tool (of course, that's my opinion, and you can take it with a grain of salt since I wrote it) - I don't think extruding is the problem.
#10
09/15/2008 (4:16 pm)
I don't think extruding is a problem neither - tho I might have left it sound that way; Reset might work - but not always. From my experience, deleting the old brush and creating the new one usually works best. I just tried minutes ago to reset a brush after trying to align a texture (w refused to) to no avail; delete, make new brush. By the way, the problem-brush was created via 'duplicate' (aye, I don't always follow the rules, look what happens).
#11
09/15/2008 (5:00 pm)
Textures and materials on DIF's

@ Jaimi McEntire Thanks jaimi, but most of that is ancient greek to some artists ;-)


It would be a great help if the guide could give an example of the process of adding bumpmaps, detailmaps and normalmaps. What the artist needs to do and what the programmer needs to do : the artist makes a texture tex1.png and a bump map tex1_bump.png placed in house1 folder, and then what the programmer needs to do -like the examples in the TSE materials overview, or make the examples more specific in the Materials Overview...
#12
09/15/2008 (5:05 pm)
Peter, that's the precise path I am aiming for; from firing up Constructor to in game model - who does what and how. Normal maps and everything else.
#13
09/15/2008 (5:44 pm)
Apparatus, sounds good :-)
Because when a non coding artist reads this material.cs text:

new Material(MAT_Broadsword)
{
baseTex[0] = broadsword;
bumpTex[0] = broadsword_normal;
pixelSpecular[0] = true;
specular[0] = "0.35 0.35 0.35 0.35";
specularPower[0] = 8.0;
};

it would be easy to assume that it would be enough to call the bump _bump or the normal _normal
he or she has no way of knowing that it has to be coded too before it works ingame... and only in TSE or TGEA...
#14
09/16/2008 (9:15 am)
Scaling or shifting textures

-It can sometimes be a nightmare to fit textures to faces I can do that with only one face selected,

When shifting texture position, sometimes the numbers jump to:
X 1.10757e+017
Y 32768

Seems like a strange bug!

Then I have to delete the brush to get the texture back to normal... :(
-sometimes Undo can do the trick but not always...

Anyway it messes up the texture to tiny gray specks on the selected surface(s)

-It seems like the program tries to do an infinite zoom or something...
#15
09/16/2008 (9:43 am)
Update: Turns out I was completely wrong about it being related to hollow brushes. I correct myself in a later post in this topic

For me the biggest issue is spotlights. They don't appear to work on the inside of any hollowed out brush. If I have a cube and then hollow it out, and then try to shine a spot light anywhere inside where the light lands and the direction of the spotlight don't appear to correspond at all. There is some kind of syncing issue going on.

This basically makes the spotlight useless for, what I view as, its primary purpose: lighting the inside of structures.
#16
09/16/2008 (9:53 am)
Peter,

I've seen that many many times. For:

Shifting : remember the size of the texture and make sure when is applied you set the shift X=0 Y=0; that should give you a good reference when trying to shift; don't use the scroll buttons for increment of the shift, enter values by hand; if you do want to use those tiny buttons, do it in small increments (instead of pressing and dragging - that will speed up the shifting to near infinite)
Reset texture : near the main texture actions buttons - ]fit to scale, align righ, left, top, bottom etc. there is a small R button. Select the problem face and click on that R. It works most of the time.
Reset brush : In the main toolbar on the left there's a long gray button called Reset brush. This will reset both the origin of the brush (if offset) and all textures back to UV scale =1.

Greg,

Hollow, carve and all these tools are all nice but BSP doesn't always like them; These operations quicken the process but will give you problems down the road at some point. Try making a room from individual brushes and test the spotlight again.

I know Constructor has a few flaws here and there but it does work after getting used with the tools.
#17
09/16/2008 (10:56 am)
@Appartus Thanks for the response, at this point the work that I was doing was mostly done with hollow and carve so I am going to have to just go ahead and do all the lighting in torque because I don't have time to re-do some of the more complex areas of my hollowed out room.

However, as I work on future projects I will keep this in mind and hopefully it will allow me to use constructor's lights.

-----------------------------------------------------------------------------------------------------------
Bug: Also, another issue that I have had is selection latency. If I have a large complex map things can get really really slow. I did a very detailed aircraft hangar and selection latency was upwards of 2 seconds for clicking on almost anything.

Now, I already read up on this and realize that Matt and the guys at GG didn't test with such high detail environments. I think their "worst case scenario" was the cathedral.

So basically what I am forced to do now is break up my scenes into multiple sub scenes and then only put them together during export. Which in the case of this hangar resulted in a pretty slow and often confusing work flow. However, it was the only solution I found for the issue.
-----------------------------------------------------------------------------------------------------------

How To: If you plan on doing large complex scenes in constructor make sure you divide them up into smaller elements, or, if you have modo (or some other app capable of accept light wave files. Export your complex brushes out and then re-import them back in as DTS place holders (thats something else I did).

-----------------------------------------------------------------------------------------------------------

Feature Request: Ideally it would be nice to "merge" brushes into some type of simple 3d object that just rendered, and then un-merge it when you want to edit it. This way you wouldn't have to worry about the latency problem and it would speed up the work flow.
#18
09/16/2008 (11:06 am)
I never tested myself a large structure/level but I am sure we can figure out a way to do this.

A few suggestions:

1. Clear history (lower right corner, a little bin icon under a stack with all your actions)
2. Use grouping a lot and hide what you don't work on. I am not sure if hiding a part of the scene will improve anything, but in theory it should.

Another suggestion: the moment you spot a brush behaving incorrect (bad lighting is a good sign), fix it. Don't leave it for later, fix it. As you work, these tiny problems tend to cascade. One thing leads to another.
#19
09/16/2008 (11:12 am)
Talking about lighting:

In the Preferences tab, set the Sun light color and position to be identical with that in the mission. You will get the exact lighting expected as you work on your interior in Constructor.
#20
09/16/2008 (11:21 am)
@Apparatus: See now the really nasty thing about the selection issue is that it is not related to history, and grouping and hiding things makes NO difference.

You can VERY easily test this for yourself by making a cube and then duplicating it 1600 times. You will see the problem immediately. Constructor even crashed on me with 2000+ brushes. I guess the moral of the story is make sure and pay attention to how many brushes you are accumulating in your scene, but if you are trying to make a map with multiple buildings I could easily see someone exceeding 2000 brushes.

If you find anything else out about the issue please let me know, but from what I can tell right now its just something you kind of have to be aware of and work around...which can make the entire process a bit more clunky but doable none the less.

Also I found the quote I was talking about from Matt:

"The cathedral was out worst case stress test during development. Our goal was to get it working on my computer but with the understanding that it wouldn't work super well. Considering that map2dif won't support more than 1024 brushes and Torque itself wasn't able to handle the number of brushes that the cathedral exported without crashing until we added the capability in TGE 1.5.2, I think that was a pretty reasonable goal."

The quote was taken from This Blog Post.
Page «Previous 1 2 3 4 5 Last »