Previous Blog Next Blog
Prev/Next Blog
by date

Deconstructing Constructor - Part 5

Deconstructing Constructor - Part 5
Name:David \"Fulcrum\" Wyand
Date Posted:Mar 24, 2006
Rating:4.7 out of 5
Public:YES
Comments:YES
RSS Feed:GarageGames Blog feedor Subscribe with .
Profile Page:View profile page for David \"Fulcrum\" Wyand

Blog post
Welcome to the fifth in a series of frequently infrequent talks about Torque Constructor. This is a continuation of my blog/.plans:

Part 1
Part 2
Part 3
Part 4

You may also want to read Matt's .plans:
Of mice and men and Constructor
When will Constructor ship?

And stop by Ron's .plan to find out about running under Linux:
TGE-L, Constructor and TSTPro

What is Torque Constructor
Torque Constructor is a .map (as in the .map file format) editing and .dif (the Torque interior file format) producing program being developed by Matt Fairfax, John Kabus, Ron Yacketta and myself under the direction of GarageGames. You may have seen the Development Snapshot of the Day posted back in March '05 where the project was first announced. If you're familiar with programs like Valve's Hammer, with a smattering of traditional 3D apps such as NewTek's LightWave or Luxology's Modo, then you'll understand Constructor.

Discussion: Objects Menu
In today's episode (for the GDC '06 demo impaired :o), I'll once again talk about what I've built in Constructor from my last update at IGC '05 until the end of the year. Specifically we'll look at what you'll find under the Objects menu today.


Constructor Objects Menu

I've divided the Objects menu into three sections. We'll go through each of them below.

Brush & Entity Grouping
There are times when you're working with a map that you'd like to group like items together. This could be a series of brushes, a collection of entities, or a combination of both. To make a group, you simply select the appropriate objects and use the Objects->Group menu item or its keyboard equivalent. Now whenever you select one item in the group, all the items in the group will automatically be selected.


The user has clicked on the rectangular brush and a grouped point light entity has automatically been selected with it

And if you'd ever like to select a single object without selecting everything within its group, you just hold down the CTRL key and click on the object. Something to note is that unlike selection sets (discussed last time) an object may only belong to one group at a time.

Lock Position & Orientation
There are times when you'd like to make an object unselectable so that you don't accidentally move it. You'd still like to see it for reference but not modify it. That's where object locking comes in.


Locked brushes are not selected with the yellow drag selection box

Using the Objects menu you may choose to lock those objects that you have selected, or everything that is not currently selected. You may also swap what is locked with what objects are not locked using the Objects->Inverse Lock menu item. When an object is locked it is drawn with dark blue edges to show its different state.

To remove the lock on the objects you use the Objects->Unlock All menu item. As you cannot select a locked item it is not possible to just unlock a few of them at a time -- you must unlock them all at once.

Hide from View
Sometimes you just need to get objects out of your way. For example you'd like to remove the roof of a building to make it easier to build its interior. In this case you'd like to hide the roof:


The top of the Orc Tower has been hidden to reveal its interior

As with locking an object, you may hide what is currently selected or hide everything that is not selected. When an object is hidden it is completely removed from the scene and does not block your mouse operations. And if you'd like to swap what is hidden with what is visible, you'd use the Objects->Inverse Hide menu item, just like you do with locking. As you can tell, locking and hiding are very similar to each other. :o)


That's it for today's quick run through of the Objects menu. I've attempted to make these operations feel familiar to anyone that has used a digital arts tool. Until next time...

- LightWave Dave

PS: If you've been paying attention, some of you may notice that the pictures have shown more than what I've talked about here. I'll shed more light on that in a future article...

Recent Blog Posts
List:01/24/08 - Amazon EC2 Torque Test Follow Up
01/16/08 - Torque on Amazon's EC2. Need your help!
10/11/07 - Jeff Tunnel's Band LIVE
10/10/07 - Live Video Stream from IGC2007
10/02/07 - Come ride the rapids
04/06/07 - What's my blog doing under the GarageGames tab?
07/05/06 - LightWave DTS Exporter v06-07-04 Released
04/21/06 - Babies wait for no man

Submit ResourceSubmit your own resources!

Clint S. Brewer   (Mar 24, 2006 at 16:23 GMT)
I see quite a few things I like in there, you might actually coax me away from my new love: gtkradiant
looking forward to trying this out.

Neil Marshall   (Mar 24, 2006 at 16:25 GMT)   Resource Rating: 5
Sounds like you need "Unlock by name" and "Unhide by name" to catch those instances where you may not want to unlock everything.

David \"Fulcrum\" Wyand   (Mar 24, 2006 at 16:30 GMT)
Clint:
I look forward to hearing your future comparison. :o)

Neil:
You are correct that being able to unlock and unhide by some identifier would be nice. It's just not in there today, and may not be for v1.0.

- LightWave Dave

James Spellman   (Mar 24, 2006 at 16:32 GMT)
Good group management is da bomb!

Todd Pickens   (Mar 24, 2006 at 16:38 GMT)
Dave, Looking really good! Can't wait to give it a spin.
Edited on Mar 27, 2006 16:29 GMT

Bryan Stroebel   (Mar 24, 2006 at 16:40 GMT)
Great looking tool. Get it out already! >:)

David \"Fulcrum\" Wyand   (Mar 24, 2006 at 16:49 GMT)
Thanks guys!

Bryan:
I really want to release Constructor too. :o) Every week it gets a little closer, but its not quite there yet. It's tough when team members come and go, and come back, and then go, and then come back again. Although right now they're gone. But they'll be back. :o)

- LightWave Dave

Anthony Rosenbaum   (Mar 24, 2006 at 16:53 GMT)
Dave, will Constructor support all the exisiting entities like triggers, and the various light types?

Bryan Stroebel   (Mar 24, 2006 at 16:57 GMT)
You know what would be cool, if constructor let you apply shaders to your obects so you could see how it would look before placing in the game. Or maybe this is something the TSTpro should do? Anyway great job. This tool is going to be huge.

Stefan Lundmark   (Mar 24, 2006 at 17:21 GMT)
Informative as always David.

Looking forward to seeing more information about your lighting solution (: It looks like it's realtime in the editor, which is something I've missed.

Thanks for the interesting plan!

Jeremy Alessi   (Mar 24, 2006 at 17:31 GMT)
Can't wait for this app! A standard will be so nice!

Allyn "Mr_Bloodworth" Mcelrath   (Mar 24, 2006 at 17:35 GMT)
Shades of lightwave....

From the UI, to the Hide mesh, to the locking...

Will layers make it? or are you going with just the locking to acomplish that.

Also, the coloring you have on the drop downs that group sets of options... is that photoshop? or is it realy like that?

I think you should keep it in, take a tip from Illistrator CS2, Illistrator natave "fillters" are grouped and seporated from the raster ones from photoshop... Before this i think alot of uses had a hard time understanding how to use them, the lableing and seporating them (with a line and some text) helped alot.

eh.. 2c.

Vashner   (Mar 24, 2006 at 19:05 GMT)   Resource Rating: 5
Hurry... I am dying a slow death waiting for it :)

Hokuto   (Mar 24, 2006 at 19:14 GMT)
useful stuff

David \"Fulcrum\" Wyand   (Mar 24, 2006 at 19:50 GMT)
Thanks again guys!

Anthony:
Constructor currently supports all entities as defined in the torque.fgd file. There are also two Constructor-specific light entity types that are cleaned up versions of those in Torque that may be used when you compile a map directly from Constructor. You may also set up your own entities and use them on your map. These are organized by game type.

Bryan:
Constructor is currently being built on TGE so there won't be any direct shader support. Once TSE goes cross platform, then we can see about adding cool things like shaders -- but that won't be for a while. :o)

As for TST Pro allowing you to set up your shaders: I have a version of TST Pro that works with TSE that is in a tech demo stage at the moment. What I'd like to do is allow the user to set up and modify their shaders directly from TST Pro and save out the appropriate script files for TSE. Lots to do after Constructor is complete. :o)

Stefan:
The lightmapping code is currently being worked on by John K -- that's why we keep him around. :o) If he doesn't have a chance to write about how the lighting works, I'll be sure to write about it in my Deconstructing Constructor series down the road. I'd like to step up the frequency of these featurettes to get more information out to you guys, but it is always a trade off between writing code and writing these.

Allyn:
A smattering of LightWave, a bit of Modo, some Photoshop and Illustrator thrown in, among others -- and of course the existing map editors out there. The advantage of creating something new is that you get to build upon what is already out there based on what seems to be working. The disadvantage is that it is difficult to have the same breadth and still actually release a product. :o)

I've always tried to mold Constructor into a regular 3D modeling application rather than a 'map builder'. There are certain limitations and compromises that must be made just because of the underlying technology -- by which I'm mean BSP's. Once we get Constructor out to testers and then finally released, we'll see how close I was able to reach this goal.

As far as layers go: I'd like to include them if I can. I couldn't imagine using a regular polygon 3D application without layers -- they're just too handy. Stripping layers down to the basics, they are a special combination of locking and hiding. Hiding objects on those layers that aren't wanted, and locking those objects that are in a background layer. So the basics are in Constructor and it'll just come down to priorities and time.

As for the colouring in the menus: yes I just did that in Photoshop to highlight the distinction. Constructor makes use of the platform's (ie: Windows and OSX) own menu system, so doing something like that natively would be a challenge (although not impossible with application drawn menus). Hopefully the sorting I have in the existing menus will help out. If we need to label the separators (and the platform supports this) then I'll look into it.

- LightWave Dave

Josh Moore   (Mar 24, 2006 at 19:59 GMT)
Wow. I can't wait.

Alan Hembra   (Mar 24, 2006 at 20:34 GMT)
Man I so want this!

Ed Averill   (Mar 24, 2006 at 20:38 GMT)
*pant* *pant* *pant*

Ship iiiitttt!

*pant* *pant* *pant*

Looks good! I bet everyone is at GDC though... lol..

Ron Yacketta   (Mar 24, 2006 at 23:10 GMT)
Quote:

It's tough when team members come and go, and come back, and then go, and then come back again. Although right now they're gone. But they'll be back. :o)


What? I am still here, havent gone nor come back.. just hanging around here


-Ron

David \"Fulcrum\" Wyand   (Mar 24, 2006 at 23:35 GMT)
Hey Ron.

No worries -- you've always been here and available. We can't get rid of you. :o)

Kirby Webber   (Mar 25, 2006 at 16:17 GMT)
Well Dave, I must say, everytime I look into constructor, it just keeps getting better.

Personally, I think the brush locking feature is sheer genius, but maybe that's just me. (C;

Mark Barner   (Mar 26, 2006 at 14:00 GMT)
@David: I noticed in the lower corners of the pictures 1m, 2m and 5m. Are the 1m, 2m and 5m in Torque units?

James Laker (BurNinG)   (Mar 27, 2006 at 07:48 GMT)
Schweet...

David \"Fulcrum\" Wyand   (Mar 27, 2006 at 15:21 GMT)
Thanks again guys.

Mark:
Those values show the grid size for each 3D view in Torque units, which I'm treating the same as meters.

Greco Van der Ven   (Apr 15, 2006 at 18:50 GMT)
Looking good. Looking very good.

One question though. Will .difs made with Constructor work with older versions of the engine?

I heard there has been some change in the data format between versions 1.2 and 1.3 that make 1.3 difs incompatible with games that use any pre-1.3 engine. (I'm getting an "Unable to read detail level 0 in interior resource" error with the latest map2dif version).

Those who want to create extra content for existing games can't upgrade their game to the latest engine code, so if at all possible, it would be nice to have the option to save all existing .dif formats.
Edited on May 02, 2006 18:05 GMT

Billy L   (Apr 22, 2006 at 23:01 GMT)
Well i must say this looking super great !
I see very good things in constructor,even things i missed from unrealed .
This look better everytime i check out , really nice work guys !

Bardur Mikladal   (May 02, 2006 at 14:23 GMT)
when?....thats the question hehe
im looking forward to this awsome product!

Regards
Bardur
Edited on May 02, 2006 14:26 GMT

Levi Putna   (Sep 05, 2006 at 05:28 GMT)
I have seen a beta version of this around UNI looks amazing wish i could get my hands on a copy. Can't wait for it to be released
Edited on Sep 05, 2006 05:32 GMT

Vladimir T   (Oct 20, 2006 at 05:27 GMT)
I think all this waiting for the editor is a crime. I swear companies always do this! Half life was promised in a month and then everyone waited for a year! Constructor I see is really kicking arse compare to anything else; if i stick to garagegames i can definetly feel being backed up at any time. But making people wait without giving a deadline for urself is a crime!!! I can't wait; I'm like a kid who is ready to make massage for money to get hold on little money to buy some more shewing gum to get the sticker out: Turbo, Loveis, ah and all those others.
It's a damage to the health of customers: some customers just get so excited they lose their mind. Please give us the deadlines! approximiatly :D. I feel like a drugaddict! YOU ARE SUPPLYING DRUGS YOU KNOW?! I should have gone doing marketting i swear :P.

Or atleast give us some beta! Let us train for teh upcoming :P. I feel like I wasn't given my daily dose of cocain - even though I'd never touch that drug or any other just coz I know I wouldn't be able to resist to have more , I can't resist to wait for Constructor - my whole team is waiting! :D.

Can I ask a question about Constructor, please answer coz I feel I wasn't given enough to inject under my skin: Will Constructor have probs and entities as cool as in Half Life 2? (if there r none don't borther extending the date to make some :P) - it would be nice to make the cars drive, plains fly, lifts move, enemies blowing their own brains out when they run out of bullets. And one more: ive read somewhere that Constructor will have its own tool for making textures?! Can you tell us more?! :D (It would be coool - coz it is a pain in the butt each time with all editors).

You must be a member and be logged in to either append comments or rate this resource.