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.

Work in Progress / Dark DynamiX - PhysX Wrapper for DBPro/GDK

Author
Message
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 8th Oct 2013 10:27
@Rudolpho - Did you get the email I sent a few days ago? I used the email from your profile here.

Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 9th Oct 2013 01:06 Edited at: 9th Oct 2013 01:07
Ah, yes just saw it (have been a bit lazy about checking my mail the last few days). Thanks!

There are some linker issues, namely LNK4217 and LNK4049. The latter is apparently just a derivation of the first.
Unfortunately I'm a bit busy at the moment and haven't been able to look into this very much, but it seems those warnings are to do with some symbols being both exported and imported in the project. As far as I can tell, I'm not importing anything (of course there could be hidden imports in some header file through a macro, but since all the warnings are for standard functionality (streambuf, some _debug_message function, x_length etc.) this topic would likely be much more prevalent when you google the symptoms then than seems to be the case).

Here's the full list of linker warnings for reference if you want to look into it. Otherwise I'll try to research it further when I get some spare time.



"Why do programmers get Halloween and Christmas mixed up?"
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 14th Oct 2013 13:45
Thanks Rudolpho, I will take a look when I get another chance.

Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 15th Oct 2013 19:19
Hm, a question... did you compile it as static or dynamic (/MT or /MD)?
I believe it should be built using /MT (the rest of DarkGDK is) and that using /MD may cause these kinds of issues.


"Why do programmers get Halloween and Christmas mixed up?"
Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 10th Dec 2013 15:41
Hi again, any news on this?

In the meantime I've been trying to access the DBPro dll from within DGDK (by LoadLibrary() and initiating it by passing the globstruct as a void* to ReceiveCoreDataPtr()).
However it fails with a null pointer access violation when calling dynStart() from the plugin. Any idea on why that may be happening?
I have scanned its exported functions and cannot seem to find any additional setup step that the DBPro executable would do manually.

Thanks for your time


"Why do programmers get Halloween and Christmas mixed up?"
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 11th Dec 2013 11:03 Edited at: 11th Dec 2013 11:08
Hi Rudolpho. Not sure why that is happening, I'm pretty sure it has worked in the past with GDK2. Someone else done a similar process also but I can't remember who it was.

I am a couple of months overdue on my current project which is why I have not been able to look into this further for now. I'm really sorry, if I can find the thread where someone was doing the same as you I will let you know.


Edit: This was the thread I was thinking of, although he was using GDK2.

Here

Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 11th Dec 2013 23:00
Ah, I see, that's quite ok

Unfortunately that other post seems to only deal with an issue where DarkGDK2 couldn't differentiate between functions with the same name and cardinality even though the arguments are of different types. My approach does this just fine, but it still crashes upon calling that function. May it be that it requires some additional dll file in the current working directory of the executable or something like that?

As a matter of fact, this DBPro program also crashes directly in the dyn start call for me:


If I add some more DD functions in there it works just fine however


"Why do programmers get Halloween and Christmas mixed up?"
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 13th Dec 2013 21:48
That rings a bell, crashing when no commands are called, but I can't remember why it happens or why I never fixed it.

I feel your frustration here, what I would really like to do is release the source code to people who have purchased it, I am a fan of the free software movement. You could then compile your own libs for the foreseeable future.

I will look into the possibility of providing source code, I need to consider TGC too, and whether it would be a problem with the contract I signed with them.

gwheycs62egydws
14
Years of Service
User Offline
Joined: 17th Aug 2009
Location: The World
Posted: 13th Dec 2013 23:00
@Matty H

we all like free software ;o)

but I do understand it takes some time and thinking to make any program

all it takes is bug in some one system and a change some ware else is
things creep in no matter how well we test them

it's likely you would not be able to get out of what you worked with them at least not in the short term

maybe a year or two or a penalty cost would be my only other thought

to move side ways - is to move forward
Since a Strait line gets thin fast
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 14th Dec 2013 00:36
Hi Resourceful - I don't mean give away the software for free, I just mean provide the source code allowing users to recompile, alter etc.

Hopefully I can spend some time on this in the new year and compile a VS2010 version and look into any outstanding issues. I am pretty proud of this plugin and I want the users to get the most out of it

gwheycs62egydws
14
Years of Service
User Offline
Joined: 17th Aug 2009
Location: The World
Posted: 14th Dec 2013 00:42
@Matty H

sorry I missed the tiny peace about people who paid already ;oP

to move side ways - is to move forward
Since a Strait line gets thin fast
Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 14th Dec 2013 00:55
That sounds really nice if it could be worked out.
I really don't see much of a problem with it; a paying customer could just as well share the compiled dll / lib files as he could share a recompiled version. I guess the problem could be someone doing some minor alterations to the source and calling it their own though.

About the crashing in DBPro, it seems to be if DBProBasic3DDebug.dll hasn't been linked into the executable, so its module handle is NULL in the globstruct.
That isn't the case in my wrapper however (which evidently works fine with other plugins such as Enhanced Animations, which also depend on the 3D library) so that's pretty strange still.


"Why do programmers get Halloween and Christmas mixed up?"
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 14th Dec 2013 01:19 Edited at: 14th Dec 2013 01:20
You are correct Rudolpho, the only issue is people compiling a DBPro dll which would be unprotected. That said, could people just wrap my library into a DBPro dll anyway? Seems like they probably could.

I will need to speak to TGC, if I can remove the DBPro parts from the source then I think they will be fine with it.

As for the crash, perhaps I am not loading the Basic3D dll explicitly, I will look into that too.

gwheycs62egydws
14
Years of Service
User Offline
Joined: 17th Aug 2009
Location: The World
Posted: 14th Dec 2013 03:25
@Rudolpho

if there was a way for some one to make there a different name
and limited to just what they did then then it would be ok to do

@Matty H

why is DBProBasic3DDebug.dll such a pain ?

to move side ways - is to move forward
Since a Strait line gets thin fast
Rudolpho
18
Years of Service
User Offline
Joined: 28th Dec 2005
Location: Sweden
Posted: 14th Dec 2013 11:09
Quote: "That said, could people just wrap my library into a DBPro dll anyway?"

I haven't thought about that before, but now that you say it, yes that would probably be perfectly possible.

Quote: "if there was a way for some one to make there a different name
and limited to just what they did then then it would be ok to do "

Hmm, sorry, didn't quite get that one?


"Why do programmers get Halloween and Christmas mixed up?"

Login to post a reply

Server time is: 2024-03-28 20:34:55
Your offset time is: 2024-03-28 20:34:55