Greetings and a couple of questions
by DavidWinter · in Torque Game Engine Advanced · 11/13/2008 (3:27 pm) · 3 replies
Greetings.
This is my first post so be gentle :)
For several years I have been developing and selling commercially a North American football title called Maximum-Football (http://www.maximum-football.com). It plays Canadian, American, and indoor football all in a single game and is fully 3D. Its graphics are based on DirectX technology and uses another game engine.
I'm currently in the early production stages of Version 3.0 of the game, and for various reasons, I'm evaluating other alternatives for the graphics engine.
Torque has always been suggested but having had my cart hooked to another horse for years, it's not been something I've spent a lot of time looking at. I have spent the past hour or so looking over the site and was unable to find the answer to one of my questions.
I guess quite simply the question I have is; can I use this engine with .Net programming languages?
I understand the system comes complete with a scripting language and editing tool (although I've heard a wide range of reviews from 'it does everything I need' to 'it really is very limiting and doesn't work like a programming language' so I will reserve judgement on that). My primary reason for not switching to the built in language is that I have many hundreds of thousands of lines of existing code for the game. Maximum-Football is not a 'simple' game and there's a lot of code behind it (including database code).
As a sports title the game has a few, potentially unique, requirements you might not get in, say a first person shooter.
- Need a way to talk to databases. MFB uses JET as its database engine. All league stats and roster data are stored in a JET Database. As are the team playbooks. I make heavy use of SQL queries when talking to these databases (I have many thousands of records of stats and players).
- Must allow for creation of textures and normal/bump maps on the fly. (numbers and names added to base uniforms)
- Reasonable physics engine (I created my own but it's probably not as good as others out there)
- Must be able to read/write custom file formats (for the teams plays). Currently, I'm using a binary serialized class for this. How does Torque handle this sort of thing?
- Basically, the normal requirements you'd get in any sports title.
Is it possible for me to simply call Torque engine functions from within .Net languages?
thanks in advance and if anyone has any comments or suggestions on porting large games over to this tool I'd appreciate it.
David
This is my first post so be gentle :)
For several years I have been developing and selling commercially a North American football title called Maximum-Football (http://www.maximum-football.com). It plays Canadian, American, and indoor football all in a single game and is fully 3D. Its graphics are based on DirectX technology and uses another game engine.
I'm currently in the early production stages of Version 3.0 of the game, and for various reasons, I'm evaluating other alternatives for the graphics engine.
Torque has always been suggested but having had my cart hooked to another horse for years, it's not been something I've spent a lot of time looking at. I have spent the past hour or so looking over the site and was unable to find the answer to one of my questions.
I guess quite simply the question I have is; can I use this engine with .Net programming languages?
I understand the system comes complete with a scripting language and editing tool (although I've heard a wide range of reviews from 'it does everything I need' to 'it really is very limiting and doesn't work like a programming language' so I will reserve judgement on that). My primary reason for not switching to the built in language is that I have many hundreds of thousands of lines of existing code for the game. Maximum-Football is not a 'simple' game and there's a lot of code behind it (including database code).
As a sports title the game has a few, potentially unique, requirements you might not get in, say a first person shooter.
- Need a way to talk to databases. MFB uses JET as its database engine. All league stats and roster data are stored in a JET Database. As are the team playbooks. I make heavy use of SQL queries when talking to these databases (I have many thousands of records of stats and players).
- Must allow for creation of textures and normal/bump maps on the fly. (numbers and names added to base uniforms)
- Reasonable physics engine (I created my own but it's probably not as good as others out there)
- Must be able to read/write custom file formats (for the teams plays). Currently, I'm using a binary serialized class for this. How does Torque handle this sort of thing?
- Basically, the normal requirements you'd get in any sports title.
Is it possible for me to simply call Torque engine functions from within .Net languages?
thanks in advance and if anyone has any comments or suggestions on porting large games over to this tool I'd appreciate it.
David
#2
What about managed languages like VB.net, C#, or Boo ?
I'm not sure I understand that answer so maybe I didn't phrase the question very well. Basically what I'm after is the ability to effect objects in a torque scene and render them so, in p-code;
//Determine XYZ of position based on movement requirements and update the position of the object
Character.SetPosition(X,Y,Z)
Character.SetRotation(X,Y,Z) //Set the character to face a direction
Character.Render() //Render the character
I would like to be able to call those functions from either C# or VB.net rather than using the scripting engine. Does that make sense?
thanks
11/13/2008 (5:02 pm)
Thanks for the quick reply.Quote:Torque compiles with Visual C++ .NET
What about managed languages like VB.net, C#, or Boo ?
Quote:Torque can use MySQL PostreSQL and likely others.hmm sounds like it uses ODBC.. which might work okay. I may put this in a stand alone .net assembly and just call those functions... How does Torque deal with objects coming from .Net assembles such as collections or arrays?
Quote:Torque loads your Materials, Bump maps, and Specular maps ( TGEA version )Thanks, I understand it could certainly load them, I'm speaking more of creating new ones on the fly. I need to be able to layer textures together and obtain a new one from those layers (for example, a base uniform texture that I can apply number textures on top of, as well as mud and other details)
Quote:Basic Physics is built in.okay
Quote:Torque functions are called with TorqueScript, but the engine functions can be called with .NET in another suitable fashion that you program into the engine if you desire that instead.
I'm not sure I understand that answer so maybe I didn't phrase the question very well. Basically what I'm after is the ability to effect objects in a torque scene and render them so, in p-code;
//Determine XYZ of position based on movement requirements and update the position of the object
Character.SetPosition(X,Y,Z)
Character.SetRotation(X,Y,Z) //Set the character to face a direction
Character.Render() //Render the character
I would like to be able to call those functions from either C# or VB.net rather than using the scripting engine. Does that make sense?
thanks
#3
11/25/2008 (8:19 am)
TGE, TGEA, and TGB do not officially support languages other than TorqueScript and (unmanaged) C++. However, the Minions of Mirth team implemented Python scripting in TGE and others have implemented Ruby and LUA scripting. So it is possible. But it will take some rearchitecting to get it working with .Net on the level that you are looking at; especially if you want to do your core coding in it.
Torque 3D Owner Scott Warren
Torque can use MySQL PostreSQL and likely others.
Torque loads your Materials, Bump maps, and Specular maps ( TGEA version )
Basic Physics is built in.
You'll have the source code, so you can add functionality for reading your custom file type and access it with TorqueScript if you wish.
Torque functions are called with TorqueScript, but the engine functions can be called with .NET in another suitable fashion that you program into the engine if you desire that instead.