Constuctor -- Lighting Problems
by Woody · in Constructor · 05/12/2007 (11:08 pm) · 6 replies
A few things to ask about Constructor lighting...
1. What's the difference between creating Torque lights and Constructor lights?
2. Once you bake the lights in Constructor, does Torque still have to calculate the interiors' light maps? It seems to be slow when importing.
3. Anyone have a good technique to get REALISTIC lighting (not extremely dark corners, etc, like in most games)? My office building contains fluorescent lights, and I can't seem to get the lights to not cast a point on the wall and still be bright enough to light the hallways, rooms, etc.
4. When lit, my DTS objects have great looking shadows... on themselves. But why do the shadows not show up on the walls and floors in my building? This seems to work great on that example pipe scene, but the shadows never show on my walls/floors from DTS objects. (yes, I have selected 'mapped' in Constructor)
5. What's the correct technique to have the lighting not emphasize the seams in my walls where my different brushes come together?
6. Anyone else have a problem with the lights not changing anything when messing with the attributes (radius, falloff_inner, falloff1, etc.)? This especially seems to happen when switching between Torque and Constructor lights. Also, I've noticed that I have created lights and set them to Constructor, only to have them be Torque lights when loading the scene again in Constructor.
Thanks for any and all help!
1. What's the difference between creating Torque lights and Constructor lights?
2. Once you bake the lights in Constructor, does Torque still have to calculate the interiors' light maps? It seems to be slow when importing.
3. Anyone have a good technique to get REALISTIC lighting (not extremely dark corners, etc, like in most games)? My office building contains fluorescent lights, and I can't seem to get the lights to not cast a point on the wall and still be bright enough to light the hallways, rooms, etc.
4. When lit, my DTS objects have great looking shadows... on themselves. But why do the shadows not show up on the walls and floors in my building? This seems to work great on that example pipe scene, but the shadows never show on my walls/floors from DTS objects. (yes, I have selected 'mapped' in Constructor)
5. What's the correct technique to have the lighting not emphasize the seams in my walls where my different brushes come together?
6. Anyone else have a problem with the lights not changing anything when messing with the attributes (radius, falloff_inner, falloff1, etc.)? This especially seems to happen when switching between Torque and Constructor lights. Also, I've noticed that I have created lights and set them to Constructor, only to have them be Torque lights when loading the scene again in Constructor.
Thanks for any and all help!
#2
Just a note, that I was able to somewhat and for the most part fix the shadow problems that I was having. I stumbled on another post that got me digging. I went into the (Scene > Manage Entities) in Constructor and saw that under the 'worldspawn' node, my 'light_geometry_scale' attribute was set at 32.0. I lowered it first to 8.0, which made a huge improvement, then down to 2.0 which was even better. Since I imported my building from a .MAP file originally, it may have had this set very high without my knowledge.
Also, I'm using 1.5.1 (#5 above), and those seams seem to show up anyway. Some walls with doorways I have used 3 brushes in a manner where the one above the door frame fans out all the way to the wall edges, and I've also done 3 brushes where the one above the door goes straight up, as do the 2 on either side of the door. Both techniques work and don't work, depending on the lighting, I think. I should note that the problem was also reduced when I fixed the light_geometry_scale node as described above.
Finally ... although I have read this in another post, I don't think it matters if you have a collision box at all on DTS objects casting shadows. I just built something for up on the wall, which the player will never collide with, and it seems to be casting a very detailed shadow (again, after fixing the light_geometry_scale) on the wall, as well as on itself. With that said, however, I have another object (a type of bench) that I had a very primitive collision box on, and the player's shadow falls only where collision boxes are, which made the shadow look like it was being cast on something invisible in mid-air. For that, I just created more collision boxes for the smaller details of the bench and the shadows now look okay. This bench was a DTS shape, not from brushes, FYI.
Hopefully that helps anyone else out that has the same problems I ran into. Thanks again, Jeff.
05/13/2007 (11:24 pm)
Jeff, thanks for the responce. I like the suggestion about using the ambient in-game to help with the lighting ... I'll give that a try.Just a note, that I was able to somewhat and for the most part fix the shadow problems that I was having. I stumbled on another post that got me digging. I went into the (Scene > Manage Entities) in Constructor and saw that under the 'worldspawn' node, my 'light_geometry_scale' attribute was set at 32.0. I lowered it first to 8.0, which made a huge improvement, then down to 2.0 which was even better. Since I imported my building from a .MAP file originally, it may have had this set very high without my knowledge.
Also, I'm using 1.5.1 (#5 above), and those seams seem to show up anyway. Some walls with doorways I have used 3 brushes in a manner where the one above the door frame fans out all the way to the wall edges, and I've also done 3 brushes where the one above the door goes straight up, as do the 2 on either side of the door. Both techniques work and don't work, depending on the lighting, I think. I should note that the problem was also reduced when I fixed the light_geometry_scale node as described above.
Finally ... although I have read this in another post, I don't think it matters if you have a collision box at all on DTS objects casting shadows. I just built something for up on the wall, which the player will never collide with, and it seems to be casting a very detailed shadow (again, after fixing the light_geometry_scale) on the wall, as well as on itself. With that said, however, I have another object (a type of bench) that I had a very primitive collision box on, and the player's shadow falls only where collision boxes are, which made the shadow look like it was being cast on something invisible in mid-air. For that, I just created more collision boxes for the smaller details of the bench and the shadows now look okay. This bench was a DTS shape, not from brushes, FYI.
Hopefully that helps anyone else out that has the same problems I ran into. Thanks again, Jeff.
#3
A few notes/responses:
3 - you can also change the ambient light of the interior via the worldspawn's ambient_color atttribute. So you could theoretically leave the sun's ambient as black in the mission, and give each interior it's own ambient, or combine them, etc.
4. Thanks for reporting that - it's noteworthy because as you say if the object will never be collided with, it's useful to know that it will still cast a shadow if it's inside the DIF.
5. Interesting - I thought I heard something about 1.5 having an all new lighting model that would help with this problem. But yeah I have noticed also that the lower the light_geometry_scale the less noticable the seams are.
05/14/2007 (12:46 am)
You're welcome.A few notes/responses:
3 - you can also change the ambient light of the interior via the worldspawn's ambient_color atttribute. So you could theoretically leave the sun's ambient as black in the mission, and give each interior it's own ambient, or combine them, etc.
4. Thanks for reporting that - it's noteworthy because as you say if the object will never be collided with, it's useful to know that it will still cast a shadow if it's inside the DIF.
5. Interesting - I thought I heard something about 1.5 having an all new lighting model that would help with this problem. But yeah I have noticed also that the lower the light_geometry_scale the less noticable the seams are.
#4
The second I just made a new post about. Constructor is crashing and it's driving me crazy because I can't figure it out and have a deadline. If you get time, please take a look at that one too. I'm not going to re-post here. The title of the post was "Constructor Crashes when adding more objects".
Yeah, the shadows look great for all DTS objects, with their self-shadowing and casting onto the DIF walls. Kudos for that, GG. Now if we can get this Crash figured out!
Thanks again!
05/20/2007 (2:03 pm)
I'm also having 2 more problems. The first was around before, but forgot to mention it. Once I export and bring the DIF into Torque, there are a couple of areas where I have a VERY LARGE, LONG white seam where the light is somehow leaking onto my floor. This only shows up once in Torque. Maybe I can figure something out with the ambients of both Constructor and Torque.The second I just made a new post about. Constructor is crashing and it's driving me crazy because I can't figure it out and have a deadline. If you get time, please take a look at that one too. I'm not going to re-post here. The title of the post was "Constructor Crashes when adding more objects".
Yeah, the shadows look great for all DTS objects, with their self-shadowing and casting onto the DIF walls. Kudos for that, GG. Now if we can get this Crash figured out!
Thanks again!
#5
If the lighting scale is already low and the brush producing the leak is very large it could be the brush is too large and it's reducing its own lighting scale to fit within the maximum light map size - replacing it with several smaller brushes will improve the lighting in that area.
Also try bumping up to TGE 1.5.2 it fixes a few lighting bugs found in 1.5.1.
05/21/2007 (9:10 am)
Try increasing the Constructor scene's lighting density (by reducing the world spawn lighting scale), this will help reduce any light leaks.If the lighting scale is already low and the brush producing the leak is very large it could be the brush is too large and it's reducing its own lighting scale to fit within the maximum light map size - replacing it with several smaller brushes will improve the lighting in that area.
Also try bumping up to TGE 1.5.2 it fixes a few lighting bugs found in 1.5.1.
#6
05/22/2007 (1:36 am)
Thanks, i'll try it
Torque Owner Jeff Gran
2. Yes, there are lights baked in but in the engine, you are calculating the sun's light and any lights that are in the mission, sg lights, etc. So you can have one interior cast a shadow on another, dts in the mission cast a shadow on the interior, etc.
3. A suggestion: Live with the super-dark shadows in the constructor preview, then change the sun's ambient light in the mission to something brighter.
4.Maybe your DTS objects don't have collision meshes. The collision mesh on a DTS is also the shadow-creating mesh.
5. Heh, good luck. I think this is addressed/fixed in torque 1.5 using the "Export Dif" function rather than legacy dif or map2dif, but I haven't tested it.
6. If you create a Torque Light and then change it to a Constructor Light, it keeps the attributes of the Torque light. But they are different. So you are then changing attributes that don't affect the new light type. Try creating one of one type and one of the other - they have different, although similar, attributes.
I've just been using Constructor lights, and they seem to work fine both for previewing in constructor and in-engine. Maybe they're the new school and the Torque style is becoming obsolete? Or maybe Torque style is compatible with the .map format for transfering to other editing programs. That makes sense, kinda.