Page 14 of 24
Posted: Tue Feb 10, 2009 2:40 pm
by Olby
As Enhanced Animation library version 1.06 is now released it would be great if you can add official support for it.
Posted: Tue Feb 10, 2009 9:18 pm
by Mistrel
I can do that.

Posted: Wed Feb 11, 2009 8:18 am
by Mistrel
Any more bugs? I was planning for a longer beta cycle because of the amount of changes. But so far it's been very stable at Beta 2.
One additional improvement I'm working on is automatic ID association when passing #GDK_Any or -1 as the ID. For example:
Code: Select all
ObjectID=dbMakeObjectCube(#GDK_Any,3)
Where ObjectID is automatically assigned as the next free ID available. I've found this to be very convenient for keeping track of assets. You can do this, for example:
Code: Select all
ObjectID=GameData_AddObject(dbMakeObjectPlain(#GDK_Any,TileWidth,TileWidth))
dbRotateObject(ObjectID,90,0,0)
dbPositionObject(ObjectID,x*TileWidth,0,y*TileWidth)
dbTextureObject(ObjectID,*GameData\ImagesLevel1\FloorMetal)
This way it's easy to capture IDs in your own lists for enumeration without all of those cumbersome FindFree..() functions.
Posted: Wed Feb 11, 2009 8:48 am
by Olby
If you could pull this off for every asset of DB, like images, meshes, objects, etc, etc. Otherwise it will be only 1/2 useful.
Oh and one more thing do you plan that the #GDK_Any will return 0 if for example the object could not be created/loaded ?
Like it would be possible to do like this:
Code: Select all
if dbMakeObjectCube(#GDK_Any,3)
; Do stuff here...
endif
If yes then you are star, just add it!

Posted: Wed Feb 11, 2009 9:03 am
by Mistrel
Returning a value instead of calling DBP's error handler is entirely possible but it would take a lot of careful planning to implement because of how something like this will universally affect many different functions.
I would really like to implement this but I can't promise that it will make it into 1.1, because of the scope of the feature.
Olby wrote:If you could pull this off for every asset of DB, like images, meshes, objects, etc, etc.
The changes for this are very minimal and there are only a handful of these functions. A feature like this, for example, is very easy to implement.

Posted: Wed Feb 11, 2009 9:59 am
by Olby
Mistrel wrote:Returning a value instead of calling DBP's error handler is entirely possible but it would take a lot of careful planning to implement because of how something like this will universally affect many different functions.
I would really like to implement this but I can't promise that it will make it into 1.1, because of the scope of the feature.
Olby wrote:If you could pull this off for every asset of DB, like images, meshes, objects, etc, etc.
The changes for this are very minimal and there are only a handful of these functions. A feature like this, for example, is very easy to implement.

That sounds good. Well don't push your self to do it because we have all those .. exist commands that are meant solely for this purpose so I guess it would not be something that we would extremely miss. Just a bit different way of handling things than internal 3d engine of PB.
Posted: Fri Feb 13, 2009 2:13 am
by Mistrel
Did anyone else notice DBP 7.2 slip out under the radar? I haven't tried it yet but from the release notes it's just an update for a new plugin and some FTP modifications (which don't affect PureGDK).
I'm not anticipating any problems but I would recommend people try recompiling their projects with the new update to see if there have been any far reaching changes.
Posted: Sat Feb 14, 2009 12:41 am
by Olby
This is what I get when I try to use any command from the GameFX library. I have it in both the DBPro folder and the data folder copied by PureGDK into my documents Roaming folder of PGDK. I tried to place the GameFX dll in various locations but that didn't help also.

Posted: Sat Feb 14, 2009 12:56 am
by Mistrel
I remember adding all of the new GameFX commands but they're missing from the GameFX library. I must have forgotten to paste them in.
I will definitely fix this!
For now, add "BUILD STATIC PORTALS" to the top of Lib-GameFX.gde in your "PureBasic\PureGDK\commands folder" to use any of the commands listed there. Only the GameFX commands listed there are implemented. This should allow you to compile what you have there.
Posted: Sat Feb 14, 2009 1:11 am
by Olby
Mistrel wrote:I remember adding all of the new GameFX commands but they're missing from the GameFX library. I must have forgotten to paste them in.
I will definitely fix this!
For now, add "BUILD STATIC PORTALS" to the top of Lib-GameFX.gde in your "PureBasic\PureGDK\commands folder" to use any of the commands listed there. Only the GameFX commands listed there are implemented. This should allow you to compile what you have there.
Thanks,
It compiles now.
Posted: Sat Feb 21, 2009 1:44 pm
by Olby
I don't know if it is only on my computer but PureGDK command help does not appear when you are typing in the status bar! That was a major help for all the commands in DBPro and PB - it's very hard to code without that help.

Posted: Sat Feb 21, 2009 2:00 pm
by Mistrel
This is a bug in the IDE. Sometimes when you type command it won't set the proper case either. I hotkey "RestartCompiler" which sometimes fixes it. It's a hit or miss, unfortunately.
There was report in the bug forum about this happening to the core PB libraries around PB 4.02 or 4.10, I think, but I can't find it.
Posted: Sat Feb 21, 2009 2:44 pm
by Olby
Ok, I saw a few other nice PB editors. Will they work with PureGDK ?
And another question. I am trying to create my own PureGDK libraries but the GDKLib Builder.exe wont compile nothing for me. I tried even the same AdvancedTerrain.dll and all it displays is an error message saying:
Code: Select all
Unexpected number of parameters: 3
Here is what I tried to pass in the GDKTable.txt:
Code: Select all
UPDATE TERRAIN
dbSetTerrainScale%LFFF%?SetTerrainScale@@YAXHMMM@Z%TerrainID, x.f, y.f, z.f
Posted: Sat Feb 21, 2009 7:57 pm
by Olby
I think the problem is solely within the library builder exe because I tried to change different paths for the files. Tried different Dlls and such but nothing helped. It would be great if you could fix that.
Posted: Sat Feb 21, 2009 11:28 pm
by Mistrel
Library Builder has changed substantially for PureGDK 1.1 and needs new documentation.
The first change is that only the GDK table is required now. The syntax is slightly different as well. The first line of the .gdt file (note the extension) has two strings separated by a percent (%). The first is the library name and the second is the dependency string (some DBP function from the library).
Everything else is the same. You can drag the .gdt file on top of the library builder, use the command line, or a shortcut. Just make sure that your current directory is where you want the output files to go. Two folders will be created, a "Sources" and a "Dependencies" folder with your .pb and .gde (formerly .d) files.
Olby wrote:Ok, I saw a few other nice PB editors. Will they work with PureGDK?
I've never tried it but it should. Just follow the required compile order of each of the tools listed in the default IDE for the PureGDK compiler. If you want to hide the GUI drop the -g parameter.
The way it works is:
Compiling with the debugger: -c "%COMPILEFILE" "%FILE" "%EXECUTABLE" -g
Compiling without the debugger: -e "%COMPILEFILE" "%FILE" "%EXECUTABLE" -g
Always run Compiler.exe with the -u parameter after your compile and before you run the executable. It won't work otherwise.
You can also run Compiler.exe with the -u parameter at any time to purge your temp folder of temporary PureGDK files.
That's it. Compiling is pretty simple.
