Modernization Kit Beta
by Alex Scarborough · in Torque Game Engine · 02/26/2007 (12:02 am) · 331 replies
Due to the absurd length of this thread, a new one has been started HERE. Please post in the new thread!
This thread is essentially a restatement of this except it's crossplatform now.
I am contractually obligated to do at least one (1) shiny thing a month, so here's my shiny thing for this month:
A working Win32 version of the ModernizationKit.
A huge thanks to OneST8 for getting the port started, and to GG for putting me in front of a PC and not minding that I quietly spent around 20 minutes a day getting this working.
Current version is: v0.8 build 0010 released 4-10-07
This is for TGE 1.5.0/1.5.1 ONLY!
Modernization Kit Website
Username: torqueUser
Password: tMK60152
This code is compatible with the latest version of Mac OS X and Windows 2000/XP
Thanks to the fabulous Jeff "Reno" Raab for letting me host this on the server he runs, and to Ben Sparks for setting up the website and forums!
I can't guarantee this code will work, or even compile, on anything other than my personal computer! Backup your copy of TGE if you use this! Actually, download a clean copy and play with that. I am not responsible for any damage done to your hardware or software as a result of using this!
Some notes: Cg is disabled by default, because it saved me the trouble of shoving Cg into TGE under Windows. Trust me, you're not going to miss the Cg layer anyways, GLSL is where it's at. If you do happen to want to enable Cg for whatever reason, uncomment #define SHADER_MANAGER_USE_CG in mkShaderManager.h.
Unit tests are disabled on Windows, to save the trouble of getting the CppUnit library up and running properly. Unit tests are enabled on OS X because you don't have to do anything for them to work; the bundled project file will link with the compiled dylib, copy it into the application bundle, and even change the install path so you really don't have to do a thing to use unit tests.
This code has not been tested on ATI GPUs under Win32. Presumably it will all work, but who knows. It has been confirmed to at least function on nVidia cards (there are a couple of known issues which will be addressed before 2008).
If you would like to subscribe to the Modernization Kit mailing list, submit a bug, or send some general feedback, please use the links on the Modernization Kit Web Center.
Best of luck, and I hope you get some good use, pretty screenshots, or fun out of this code!
This thread is essentially a restatement of this except it's crossplatform now.
I am contractually obligated to do at least one (1) shiny thing a month, so here's my shiny thing for this month:
A working Win32 version of the ModernizationKit.
A huge thanks to OneST8 for getting the port started, and to GG for putting me in front of a PC and not minding that I quietly spent around 20 minutes a day getting this working.
Current version is: v0.8 build 0010 released 4-10-07
This is for TGE 1.5.0/1.5.1 ONLY!
Modernization Kit Website
Username: torqueUser
Password: tMK60152
This code is compatible with the latest version of Mac OS X and Windows 2000/XP
Thanks to the fabulous Jeff "Reno" Raab for letting me host this on the server he runs, and to Ben Sparks for setting up the website and forums!
I can't guarantee this code will work, or even compile, on anything other than my personal computer! Backup your copy of TGE if you use this! Actually, download a clean copy and play with that. I am not responsible for any damage done to your hardware or software as a result of using this!
Some notes: Cg is disabled by default, because it saved me the trouble of shoving Cg into TGE under Windows. Trust me, you're not going to miss the Cg layer anyways, GLSL is where it's at. If you do happen to want to enable Cg for whatever reason, uncomment #define SHADER_MANAGER_USE_CG in mkShaderManager.h.
Unit tests are disabled on Windows, to save the trouble of getting the CppUnit library up and running properly. Unit tests are enabled on OS X because you don't have to do anything for them to work; the bundled project file will link with the compiled dylib, copy it into the application bundle, and even change the install path so you really don't have to do a thing to use unit tests.
This code has not been tested on ATI GPUs under Win32. Presumably it will all work, but who knows. It has been confirmed to at least function on nVidia cards (there are a couple of known issues which will be addressed before 2008).
If you would like to subscribe to the Modernization Kit mailing list, submit a bug, or send some general feedback, please use the links on the Modernization Kit Web Center.
Best of luck, and I hope you get some good use, pretty screenshots, or fun out of this code!
About the author
#202
@Michael: Yes, fog still affects interiors and water just as it always did.
@Igor G: The Modernization Kit will not be initialized unless a GuiCanvas is created. As such it exists only on the client, so you should avoid making any MK calls in server side code.
@All: Just a reminder that there is a Modernization Kit Website with forums and polls and the like.
Username: torqueUser
Password: tMK60152
04/30/2007 (1:37 pm)
@Ricardo: That is a known bug in TGE 1.5.1. The cottage dif contains some errors which freak out the lighting and trigger that assert. It's nothing to worry about.@Michael: Yes, fog still affects interiors and water just as it always did.
@Igor G: The Modernization Kit will not be initialized unless a GuiCanvas is created. As such it exists only on the client, so you should avoid making any MK calls in server side code.
@All: Just a reminder that there is a Modernization Kit Website with forums and polls and the like.
Username: torqueUser
Password: tMK60152
#203
04/30/2007 (8:53 pm)
TGE doesn't support Normal map right.
#204
Not sure if that was a question or a statement, but I've not had any trouble with normal maps & TGE w/MK:
This:
Plus This:
Equals This:

By default it doesn't support it, but with the Modernization Kit does.
04/30/2007 (9:24 pm)
@MB6019Not sure if that was a question or a statement, but I've not had any trouble with normal maps & TGE w/MK:
This:
Plus This:
Equals This:
By default it doesn't support it, but with the Modernization Kit does.
#205
04/30/2007 (9:34 pm)
SO I would be able to Normal Map my character then bring it in to TGE
#206
@Alan: I remember that floor from Not-IGC. You've got some really nice normal/height maps going there.
Obligatory reminder, there is a Modernization Kit Website with forums, polls, and the like.
Username: torqueUser
Password: tMK60152
04/30/2007 (9:39 pm)
@MB6019: Well, you could if the Modernization Kit supported shaderized DTS shapes out of the box. Which it doesn't. You'd have to add DTS support yourself. And no, there are no plans at this time to add support for DTS shapes.@Alan: I remember that floor from Not-IGC. You've got some really nice normal/height maps going there.
Obligatory reminder, there is a Modernization Kit Website with forums, polls, and the like.
Username: torqueUser
Password: tMK60152
#207
Alex has said that there is just a small amount of coding required to bring normals to .DTS objects from the point the the Modernization Kit has reached. That's coding cabablility unfortunately is beyond my cababilities, but there are those in the community that it would more than likely be pretty simple.
Now, of course, it's just a matter of finding and convincing them to do it. =)
Edit: Man, you beat me by 2 minutes, Alex!
04/30/2007 (9:41 pm)
The Modernization Kit is specifically (at this point as I understand it) directed at .DIF objects. It doesn't currently support .DTS objects.Alex has said that there is just a small amount of coding required to bring normals to .DTS objects from the point the the Modernization Kit has reached. That's coding cabablility unfortunately is beyond my cababilities, but there are those in the community that it would more than likely be pretty simple.
Now, of course, it's just a matter of finding and convincing them to do it. =)
Edit: Man, you beat me by 2 minutes, Alex!
#208
04/30/2007 (10:50 pm)
Looks great alan, as usual. nice and clean normal maps.
#209
The other mistake I see people make is adding too much detail, creating very dirty normal maps or creating normal maps directly from the diffuse.
This is a good example of a decent normal map. It's clean and includes detail information.
Diffuse

Normal

Shaded
04/30/2007 (11:39 pm)
I'd say they're a little too clean, very basic and no detail. The diffuse seems to indicate a rough surface but the normal map is entirely smooth.The other mistake I see people make is adding too much detail, creating very dirty normal maps or creating normal maps directly from the diffuse.
This is a good example of a decent normal map. It's clean and includes detail information.
Diffuse

Normal

Shaded
#210
Will it be possible to post another link where I can get the file?
Thx.
04/30/2007 (11:56 pm)
Sorry to ask this, but i have issue to access the archive file (mainly due to some limitation to access some foreign website from mainland China). I cannot access ttrgame.com website.Will it be possible to post another link where I can get the file?
Thx.
#211
I'm in China Beijing and have no problem to access ttrgame.com.
But for this address:
http://www.ttrgame.com/MK/MKcode/MKCC.html
You may use other method to access it,such as FirePhoenix-1.0.
I guess it's ip may be blocked by some unknown reasons!
FirePhoenix can fix this problem.
You can try it.
skanda1975@hotmail.com
torquewow.com/community/
05/01/2007 (12:44 am)
@ Frank Bignone:I'm in China Beijing and have no problem to access ttrgame.com.
But for this address:
http://www.ttrgame.com/MK/MKcode/MKCC.html
You may use other method to access it,such as FirePhoenix-1.0.
I guess it's ip may be blocked by some unknown reasons!
FirePhoenix can fix this problem.
You can try it.
skanda1975@hotmail.com
torquewow.com/community/
#212
I'm in Beijing too :) and tried it but cannot get the files (cannot connect to site). So it is maybe due to my internet provider.
By the way, it may be nice to meet if you have time sometimes :)
05/01/2007 (12:49 am)
@SkandaI'm in Beijing too :) and tried it but cannot get the files (cannot connect to site). So it is maybe due to my internet provider.
By the way, it may be nice to meet if you have time sometimes :)
#213
05/01/2007 (1:35 am)
Thanks it works now
#214
05/01/2007 (2:02 am)
No thanks. Good luck in MK!
#215
looks good. but the only problem is mk cant make the interiors look that good as you shown. because you got specular high lights going. where mk does not. though i believe tgea does. one feature that would be nice if it was implemented. but if you bake in speculars it would look similar, just not real lighting. I think alan did that once with his dts objects, to make it look like a bumpmap, with drl working of course.
05/01/2007 (6:42 am)
@Tim Heldnalooks good. but the only problem is mk cant make the interiors look that good as you shown. because you got specular high lights going. where mk does not. though i believe tgea does. one feature that would be nice if it was implemented. but if you bake in speculars it would look similar, just not real lighting. I think alan did that once with his dts objects, to make it look like a bumpmap, with drl working of course.
#217
Now the problem is that whenever you shutdown a dedicated server, it will crash. This is because MKDestroy(); is called in shutdownLibraries(). Of course a dedicated server never initializes the MK in the first place, since that's done in the onWindowCreated function, so perhaps MKDestroy should be placed somewhere else? Perhaps accessed from a script? Any ideas?
Thanks.
05/02/2007 (11:02 am)
Alex - I'm still experiencing problems with a dedicated server. I do not initialize the Modernization Kit if the server is dedicated by checking for if($Server::Dedicated == false) in my game's main.cs.Now the problem is that whenever you shutdown a dedicated server, it will crash. This is because MKDestroy(); is called in shutdownLibraries(). Of course a dedicated server never initializes the MK in the first place, since that's done in the onWindowCreated function, so perhaps MKDestroy should be placed somewhere else? Perhaps accessed from a script? Any ideas?
Thanks.
#218
loading compiled script starter.fps/data/interiors/lightingPack/autogenMatList.cs.
%
Any ideas?
Thanks,
Mike
EDIT: I didnt see this till now oops (problem solved):
05/05/2007 (12:16 pm)
I am also having problems with dedicated server. I'm using 1.5.1 with MK. When I try to start a dedicated server it crashes at:loading compiled script starter.fps/data/interiors/lightingPack/autogenMatList.cs.
%
Any ideas?
Thanks,
Mike
EDIT: I didnt see this till now oops (problem solved):
Quote:
Ok - nevermind my last post. I just added this to my main.cs:
//------------------------------------------------------------------
// TGE Modernization Kit
//------------------------------------------------------------------
if($Server::Dedicated == false)
{
exec("./data/init.cs");
DRL::setBiasLimits(-0.05, 0);
DRL::setGoalIntensity(0.35);
DRL::setBloomColorOffset(0.15);
}
//------------------------------------------------------------------
// TGE Modernization Kit
//------------------------------------------------------------------
#219
05/06/2007 (5:31 am)
OMG i love this KIT, water looks soooo good :D
#220
05/06/2007 (7:15 am)
I'm having the same problem as J Taylor, namely an error on compile with a clean 1.5.0 build:Quote:2>c:\torque\150sdk\engine\platform\glextfunc.h(19) : error C2065: 'logglActiveTexture' : undeclared identifierlogglActiveTexture isn't defined anywhere in that bit of code, not even in th commented parts, which I guess is the problem. There's no answer to this on the TMK forums, but I'm posting this there as well.
Igor G
Default Studio Name
//------------------------------------------------------------------
// TGE Modernization Kit
//------------------------------------------------------------------
if($Server::Dedicated == false)
{
exec("./data/init.cs");
DRL::setBiasLimits(-0.05, 0);
DRL::setGoalIntensity(0.35);
DRL::setBloomColorOffset(0.15);
}
//------------------------------------------------------------------
// TGE Modernization Kit
//------------------------------------------------------------------