Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / [Dark GDK 2.0 Dark Dynamix

Author
Message
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 01:37 Edited at: 13th Jul 2012 01:39
After a very tedious process of building the .gdt definition file manually in notepad to wrap all of the almost 500 commands, due to Dark Dynamix not yet being supported in Dark GDK 2.0, I can reveal Dark Dynamix running in Dark GDK 2.0. Woop!

http://youtu.be/gSoUEWDrhOM

I'm sure, now I've done it, that Mistrel will reappear with RC5 and built-in support for Dark Dynamix but I was too impatient.

All the below relies on you copying the Dark Dynamix DLL into the Dark GDK 2.0 plugin directory and making sure it is registered as you would for any other plugin.

Firstly, because of how Dark GDK 2.0 currently builds its headers, if there are overloaded commands with the same number of parameters, even if they're different data types, it will not allow them. For this reason, you need to use two different .gdt files; one for building the headers and one for building the engine. In the one for the headers I have added extra parameters just to differentiate between methods. The .gdt file for the engine is fine without and would in fact error if you included them. I've attached the two files to this post.

Drop them into the templates directory one at a time, rename the current one to 'DarkDynamix.gdt' build that part and then repeat for the other. Then you'll have the engine DLL with Dark Dynamix included and the source files for calling methods from the DLL. These source files will at the moment have the extra method differentiating parameters in them so you will need to go through and edit these out. Once that is all done you should be good to go.

As I'm sure you can tell by looking at the files, this was a rather painstaking process so there are quite possibly a few typos or whatever which I apologise for in advance so please feel free to let me know of any you find. If you give this a shot and have any trouble then leave a message here and I'll do my best to help you.


Previously TEH_CODERER.

Attachments

Login to view attachments
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 13th Jul 2012 02:14 Edited at: 13th Jul 2012 02:15
HOLY #%$@!



No but seriously

we all need to buy you a coffee dude!

EDIT

How does one register a DLL btw?

Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 02:32
Haha, thanks. Whilst it wasn't much fun to do though, the real credit goes to Matty for making the Dark Dynamix plugin in the first place.

In Dark GDK 2.0 you can copy across all your plugins from Dark BASIC Professional. For instance, all the plugins you've bought through TGC should be in a folder like 'D:\Program Files (x86)\Dark Basic Software\Dark Basic Professional\Compiler\plugins-licensed' and these can be copied and pasted across to the Dark GDK 2.0 folder somewhere like 'D:\Program Files (x86)\DarkGDK\engine\plugins-licensed'. Then you can run the 'tgcauth' app which will be in a folder like 'D:\Program Files (x86)\DarkGDK\engine' and register your plugins with your email address and license key as you would for Dark BASIC Professional. This entire process is explained (probably more clearly than I'm managing) within the documentation for Dark GDK 2.0 (D:\Program Files (x86)\DarkGDK\help).

If you don't already have the Dark Dynamix plugin then I highly recommend it. Matty has done an excellent job so far and I believe is still making fixes and changes as requested. http://www.thegamecreators.com/?m=view_product&id=2318


Previously TEH_CODERER.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 13th Jul 2012 02:47
Sweet thanks... Sadly I need to wait to buy DDyn at the monent... But do plan to get it soon...

Hmm I will have to wait and see about the relicencing as it makes no sense to me right now... But thanks!!!

Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 02:53
No worries. As far as the licensing goes, it is exactly the same process as for Dark BASIC Professional. A little app with a list of currently registered plugins where you type in your email address and plugin activation code. This then connects to TGC over the internet and creates a local certificate file. You can see these in a folder like 'D:\Program Files (x86)\Dark Basic Software\Dark Basic Professional\Compiler\certificates'. This same process just needs to be done for Dark GDK 2.0. You may even be able to just copy the certificates folder across but I haven't tried that yet. Either way, when the time comes, someone, if not me, will definitely be able to help you get it sorted out.


Previously TEH_CODERER.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 13th Jul 2012 03:02
Absolutely, Thank you!

haliop
User Banned
Posted: 13th Jul 2012 04:16
AwESOME!
haliop
User Banned
Posted: 13th Jul 2012 13:50
non pyhsic related, how did you do the shadows?
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 14:05
For the sake of the quick demo above, I just used the built in 'dbSetShadowShadingOn' command. The shader based version of this command (setting the last parameter to '1') doesn't seem to currently work in Dark GDK 2.0 unless I'm missing something so if anyone knows why that is or if I'm missing something then I'd be quite interested to know! Normally though I would use shaders for the shadows, such as the excellent one posted by Fallout recently in the Dark BASIC Professional board. http://forum.thegamecreators.com/?m=forum_view&t=198425&b=1


Previously TEH_CODERER.
haliop
User Banned
Posted: 13th Jul 2012 15:07
dosent dbSetShadowShadingOn(id) needs a fx file with it?
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 15:46
I know it did in the original Dark GDK, I wan't sure if it was in version 2.0. Regardless, I have already tried placing it in every possible directory relating to the project and still haven't been able to get any shadows to render using the shader. I'm using the 4 parameter version of the command.

dbSetShadowShadingOn(ObjectID, MeshID, ShadowRange, UseShader)

It only works with 'UseShader' set to 0. In Dark BASIC Professional it works fine either way.


Previously TEH_CODERER.
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 13th Jul 2012 16:46
Thanks for this Andrew.

I was considering using DarkGDK 2 for my next project but favoured DarkGDK 1 because I have Dark Dynamix

Now that's not an issue, thanks

Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 13th Jul 2012 17:21
I have DD. I used it in 1.0, but I don't know what to do with the two files you provided.....

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 17:26
No worries. I must admit, whilst I couldn't see why it would be an issue, I was starting to worry if I should have asked your permission before doing this, so to have gratitude instead is a relief!

I was wondering whether I was rewriting something you may basically already have available but it sounds like my time wasn't wasted then and hopefully this can now be useful to more people than just myself.

Please do let me know if you find any problems with it so I can correct the .gdt files accordingly. I already spotted a little issue with the 'headers' file so I've attached the updated one to this post. Also, I have edited the generated C++ header file a little to be more user friendly so if you want a copy of that as well then just say.


Previously TEH_CODERER.

Attachments

Login to view attachments
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 17:39
Sorry for the double post, but only saw Hawkblood's post after posting my first one.

If you look in 'D:\Program Files (x86)\DarkGDK\engine\plugins-licensed' (amend for however your installation is setup) you will see a set of '.gdt' files; one for each of your licensed plugins. This may be empty if you haven't yet set any up with Dark GDK 2.0. These '.gdt' files are descriptions of all the methods publicly available in a plugin and the parameters they take and return. Normally Dark GDK 2.0 will generate these for you from the DLL but Dark Dynamix isn't yet supported so I have manually generated these files. There is another drawback to how Dark GDK 2.0 currently uses these files in that if you have an overloaded method (the same method name with different parameters) with the same number of parameters (maybe one version takes a filename as a string and another takes and ID as an integer) it will not handle this. Because of that, I have had to make two different versions of this '.gdt' file; one which uses the correct parameters to build the engine with and one that uses extra (redundant) parameters to differentiate between overloaded methods to build the headers with.

So, the full process will be:

Copy the Dark Dynamix DLL from the '/compiler/plugins-licensed/' directory of your DBPro installation folder into the '/engine/plugins-licensed/' directory of your Dark GDK 2.0 installation folder.

Activate the Dark Dynamix DLL with Dark GDK 2.0 by running the 'tgcauth' application in the '/engine/' directory of your Dark GDK 2.0 installation folder.

Edit the 'libraries' file in the '/engine/' directory of your Dark GDK 2.0 installation folder to include 'DarkDynamix.dll%DarkDynamix' in the ';/ Licensed plugins' section.

Drop the 'DarkDynamix-engine.gdt' file into the '/templates/libraries/plugins-licensed/' directory of your Dark GDK 2.0 installation folder and rename it to just 'DarkDynamix.gdt'.

Run the 'compile engine with plugins.bat' file in the root of your Dark GDK 2.0 installation folder.

Delete the '.gdt' file we just added and drop the 'DarkDynamix-headers.gdt' file in instead and once again rename it to 'DarkDynamix.gdt'.

Run the 'compile headers.bat' file in the root of your Dark GDK 2.0 installation folder.

Now your new Dark GDK 2.0 DLL and headers should all be generated. Now you will have to quickly go through the '.cpp' and '.h' files for DarkDynamix to remove the redundant parameters that were added which can be done very easily via a search for the 'differentiate' parameters. Once that is done you shoule be up and running.

Let me know if you get stuck on any of these steps.


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 13th Jul 2012 18:08 Edited at: 13th Jul 2012 18:08
I already have a problem. I can't find DarkDynamics.dll. I have several .dlls associated with DD, but not just 1 specific .dll. Do I need to download a different verion or something? I don't use DBP for anything, so I only have the bare minimum of DBP stuff....

The fastest code is the code never written.

Attachments

Login to view attachments
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 18:25
When you install the DBPro version of DarkDynamix it will add the DLL to the folder 'D:\Program Files (x86)\Dark Basic Software\Dark Basic Professional\Compiler\plugins-licensed'. I believe installing the DBPro version is the only way of getting the DLL, though Matty may be able to correct me.


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 13th Jul 2012 18:34
Got it. It looks like it will work.... What were you talking about
Quote: "remove the redundant parameters "
? It compiled without any problems. I used your second upload of the headers. Is that why?

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 19:02
For overloaded functions, in the 'DarkDynamix-headers.gdt' file, I have added 'DIFFERENTIATE', 'DIFFERENTIATE2' and 'DIFFERENTIATE3' in various places. This means the 'compile headers' tool will run fine. However, the generated C++ code will still have these redundant parameters in and will try to use them when it makes calls to the DarkDynamix DLL which won't be expecting these extra parameters. To stop any potential problems there, you can open up the '.cpp' and '.h' file for DarkDynamix which were generated and remove those extra parameters.

Just to make sure, when you ran the 'compile headers' and 'compile engine' tools, did DarkDynamix show up in the command prompt list?


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 13th Jul 2012 19:36 Edited at: 13th Jul 2012 19:43
I guess I still need to copy all the other .dlls to my game directory..... Right?

EDIT: it looks like I was right. The documentation I have is for the original. I know the names have only changed slightly, but it would be nice to have that modified to reflect the new syntax.

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 20:03 Edited at: 13th Jul 2012 20:04
Yes, you will need the other DLLs in your project's debug directory I believe. I'm not sure what you mean in your edit though. Are you referring to the function names in the generated C++? If so, I'm sure a 'find and replace' can adapt them for the most part. For my own version I have added a DarkDynamix namespace and then included the flags the plugin uses as constants as well so that I can use the namespace with intellisense. E.g. DarkDynamix::Start() and DarkDynamix::SetParameter(DarkDynamix::NX_FF_VISUALIZATION, 0)


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 13th Jul 2012 21:25
I mean the help file that came with the original DD.

darkgdk_cpp.chm

It's not a big deal, but it would be nice to be able to copy and paste from there.....

I did test your DD modification and it seems to work just fine! Great job!

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 13th Jul 2012 22:39
Ah, I'm with you. Great stuff though, I'm glad you got it working!

Coming from a C# background, I'm picking up this C++ malarkey fairly quickly and, now I'm able to use DarkDynamix, my engine is starting to look pretty good. Looking forward to a weekend of actual coding now this part is out of the way!


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 14th Jul 2012 00:06
What about the help file?

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 14th Jul 2012 01:19
Well if I was understanding you correctly then doing a search replace of 'DYN_' to 'dyn' should make them all tie up to the original syntax and hence the syntax used in the help files. Of course, I started this when Mistrel seemed to disappear and I thought it might be quite a while until support was added in RC5 but the day I've finished this Mistrel has started posting again and will probably end up rendering all this work obsolete. Haha, oh well! I'd rather have it properly supported anyway, but at least this can be used to be getting on with for now. Depending how far Mistrel has got, I suppose there is a chance that some of this may even be useful to him...


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 15th Jul 2012 19:30 Edited at: 15th Jul 2012 20:39
I am having trouble COOKING an object. Can you help me, Andrew_Neale?

LevelData.LevelMesh is a valid GDK object.
FindFreeObject() is just what you think it is.
LevelName is a valid string of the file name I want to save it under.
LevelData.LevelTMeshID will be the GDK object for the TMESH.

Do you have any idea why it crashes? It says "Object12 does not exist". I narrowed it down to tempObjectID==12

when I check it (dbIsObject(tempObjectID)) I get 0.

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 15th Jul 2012 20:53
Hm, I'm no expert yet, but I'll give it a shot.

Firstly, just for information, whilst using your 'FindFreeObject()' method shouldn't be an issue, in 'DYN_CookTriangleMesh', the second parameter is not an object ID as far as I'm aware. I think it is an ID specific to triangle meshes in Dark Dynamix.

Also, if you're saying that 'dbIsObject(tempObjectID)' returns '0' then that would explain why you can't cook a triangle mesh from it. I guess that means it silently failed when making an object from the mesh? Have you done a check that the mesh exists just before building an object from it? If it doesn't then maybe there was an during the 'dbCreateMeshFromObject' method. I think your parameters are the wrong way around as it should be 'dbCreateMeshFromObject(object, mesh)'.

Let me know if none of this helps and I'll have another look.


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 15th Jul 2012 21:06
Ok. Got a little further:

The .TMESH file should be 553k, but it only saves as 1k...?

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 15th Jul 2012 21:15
Quote: " I think your parameters are the wrong way around as it should be 'dbCreateMeshFromObject(object, mesh)'."


Did you try this yet?


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 15th Jul 2012 21:26
That did it!

BTW, when you said very early on to delete
Quote: "'DIFFERENTIATE', 'DIFFERENTIATE2' and 'DIFFERENTIATE3' in various places"
I deleted the entire line where it appeared... I should have just taken out the references in the .h and .cpp. I'm gonna have to go back and fix my screwup.

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 15th Jul 2012 22:53
Ah, sorry for the misunderstanding there. I did only mean to take out specifically the mentions of those parameters in both the '.h' and '.cpp' files. I hope it doesn't take you too long to sort it out.

I'm glad we got the other issue sorted though.


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 15th Jul 2012 23:24
Already done. Thanks for the work you did on DD.

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 16th Jul 2012 11:21
No worries, I'm just glad someone else is getting some use out of it.


Previously TEH_CODERER.
Juggernaut
12
Years of Service
User Offline
Joined: 12th Mar 2012
Location:
Posted: 16th Jul 2012 19:20
Can Dark Occlusion be made to work with Dark GDK 2.0 in the same way ?
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 16th Jul 2012 20:51
Quote: "Can Dark Occlusion be made to work with Dark GDK 2.0 in the same way ?"

I don't think that Dark Occlusion is a traditional plugin, so I'm not sure how it would integrate into DarkGDK.

MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 16th Jul 2012 20:54
Max P is working on turning it into a DLL at the moment I believe, please follow the official thread here

Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 17th Jul 2012 04:42
void DYN_ControllerGetPosition(int32_t objectID, int32_t vector3ID)

will do nothing. I'm suprised it didn't fail. 2.0 doesn't use referenced vectors anymore.

Prehapse something like:
void DYN_ControllerGetPosition(int32_t objectID, Vector3 *vec3)

I don't have the skill to fix this.

The fastest code is the code never written.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 17th Jul 2012 05:42
NXCC_COLLISION_DOWN is missing.

Has it been renamed? How do I check if my controller is on the ground?

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 17th Jul 2012 09:30 Edited at: 17th Jul 2012 10:19
Ah, I didn't know vectors had been removed. In that case I'm not sure there is anything we can do to make that work. Dark Dynamix will be looking for a vector to put values into so it doesn't matter what we put in the parameters as Dark Dynamix will only be looking for an integer ID to a vector. It sounds like that may be a show stopper until Mistrel gets RC5 out.

Having said that, there seems to be a bunch of vector commands still in Dark GDK 2.0. For instance, 'dbAddVector3'. I would imagine if you use that to create a vector first and then pass its ID to Dark Dynamix as the 'vector3ID' parameter it may work? I'm afraid I have to get to work so I can't test this at the moment.

NXCC_COLLISION_DOWN is a constant which Matty included in an extra '.dba' file for the DBPro version of the plugin. You could drop these into the Dark Dynamix header file if you want them available.



[Edit] Also, thinking about it, the vector functionality is still in the DBPro core functionality, so even if it wasn't wrapped by default it should be straight forward to wrap it the same way all the other commands have been. I'll probably have a look when I get home from work, but if you give it a shot before then with those vector commands and it still doesn't work then please let me know. [/Edit]


Previously TEH_CODERER.
Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 17th Jul 2012 11:03
Quote: "void DYN_ControllerGetPosition(int32_t objectID, int32_t vector3ID)

will do nothing. I'm suprised it didn't fail. 2.0 doesn't use referenced vectors anymore."


I encountered the same problem when I tried wrapping this plugin; there are actually quite a few commands which use legacy math IDs.

I am also trying to address this issue in RC5 as there are no exposed commands for wrapping these data types.

Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 17th Jul 2012 13:36
Thanks both of you for responding.

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 17th Jul 2012 15:18
Thanks for the information, Mistrel. So at this point does it make sense for me to drop this and wait for you to add support or should I keep looking and let you know if I have any luck?


Previously TEH_CODERER.
Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 17th Jul 2012 17:25
You might as well keep working on it until I have a solution available. Especially if you're using it yourself.

JohnA
12
Years of Service
User Offline
Joined: 20th Jul 2011
Location: The second star on the right
Posted: 17th Jul 2012 21:41
HI, I did everything and it seems to have worked but i can't figure out where the darkdynamix.h should be. All the ones on i've found that are on my hdd do not have the DIFFERENTIATE in the file. So i need to know where it should be and then where it needs to be.

thanks

=Arkii=

Heres Johnny
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 21st Jul 2012 23:29
@Andrew_Neale
Everything that has a db vector is broken.

I think it might be useful if I knew how to fix the code. What do you use to recompile it?

The fastest code is the code never written.
Andrew_Neale
14
Years of Service
User Offline
Joined: 3rd Nov 2009
Location: The Normandy SR-2
Posted: 22nd Jul 2012 00:22
@Hawkblood - Indeed, and at the moment I have absolutely no idea how to get around that I'm afraid. I'm not sure what you mean about recompiling though.

@JohnA - Once you run the 'compile engine with plugins' or 'compile headers' batch files, the folder containing the built files is automatically opened and the DarkDynamix '.h' and '.cpp' files should be in there. If they are then make sure you're not using a case-sensitive search as I believe the batch files change the casing of parameters so you would have to search for 'dIFFERENTIATE'. If they aren't there then it sounds like you've missed one of the steps. Let me know if you are still having problems.


Previously TEH_CODERER.
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 22nd Jul 2012 00:46
So you don't have any way to rewrite the source code?

The fastest code is the code never written.
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 22nd Jul 2012 01:03
I will be working on an update very soon, I can't guarantee I can replace all the commands which contain a vector, but if you list the ones you see as vital then I will add more commands which avoid the dbVector structure for those commands.

Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 22nd Jul 2012 02:42 Edited at: 22nd Jul 2012 02:44
If your going to update it, then use directx vectors instead.


These are just a few that I was needing to make my game. I'm sure there are more, but it's a start.

Take out the *s. The forum thinks it is "bad language"

The fastest code is the code never written.
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 22nd Jul 2012 05:24
Quote: "If your going to update it, then use directx vectors instead."

Please don't. Sorry Hawkblood, but DirectX vector manipulation is painful. Of course, I've been kind of spoiled with Ogre's vector system(operator overloading, seamless integration between vectors/quaternions/matrices,etc).

Login to post a reply

Server time is: 2024-04-19 08:54:12
Your offset time is: 2024-04-19 08:54:12