Game Framework

Game Framework

Hello We have our current NetBook games developed under Unity. Unfortunately Unity accepts .DLL libraries but not .LIB (not possible anyway) and it does not export a VS project either. It seems that the only way for us is to port one by one our games to integrate them with your SDK. Is there any Game Framework we can use within Visual Studio instead of creating a whole game from scratch? Or maybe if there is a Game Engine that exports a VS project that would be even better. Thank you.
14 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项

Andres,

The solution is to create a C++ Wrapper DLL for the .LIB files. Then you can import those into your programming platform. Worst case, create a COM accessible wrapper and execute the required SDK method that way. If you need any help with the wrapper please let me know.

Hi Brian,

Which .lib files are you referring to?

Should I be integrating the Intel SDK .lib files (via the wrapper dll) into the project that is based on an engine? [Assuming this is the case, does it imply that I need access to the engine source code as well?] - [Torque Game Builder doesn't ship with source in the base package...it has an authoring front-end in which we write script, and then build the project from within that front-end to produce the final (Windows) executable...so considering this scenario...I felt it mightn't be possible to integrate the Intel SDK files in my final exe...so I am asking if I need the engine source? (which has to be purchased separately)]

or

Should I be integrating the engine .lib files (via the wrapper dll) into an independent project that uses the Intel SDK files?

The above questions may sound vague...but I have not tried either of these approaches, as I don't know which one will work. However, I do need to get atleast one of them to work. Which one should I go after?

Bosco,

The general idea for your case would be:

1.) Create a new C++ DLL project that acts as a wrapper (Facade architecture) for the ATOM SDK methods. This DLL will need to expose the methods in a way you can use from your primary project (game) for authentication. This DLL will need to reference the Intel ATOM SDK Lib files.

2.) Create your game as usual, ensuring it references the game engine in any fashion that suits you. From your game project, you will need to reference your new DLL created in step 1.

3.) Create your MSI installer, including the DLL created in step 1

4.) Beta test, then submit for validation

Please let me know if you get stuck at any point, and I will try to assist.

Hi Andres,

Thank you for your query and your interest in the Intel® Atom™ Developer Program.

I would recommend you to check the community on the MSDN forums. Developers from that forum may be able to guide you about the tools and framework you are looking for.

MSDN Forums: http://social.msdn.microsoft.com/Forums/en/category/vsts/

Kind Regards,
Rooven

Intel® Atom™ Developer Program Team.

Regards, DG Rooven

Hello Brian

Yes I need help with the wrapper. Any advise on how to implement it is highly appreciated.

Andres

Andres,

The approach will depend on whether your development platform can call managed DLL methods. If not, you will need to create a COM compliant wrapper DLL (assuming your development platform can call COM methods).

Do you know what types of DLL's Unity can reference?

Hello Brian

Unity can reference managed dll methods.

Currently we have been able to create a test DLL wrapper (32 bit) that works on the development machine (Vista 64 bit).

But when we use that same DLL file on the Netbook itself (Win XP) it does not work. Unity is unable to integrate the DLL.

Do you have any clue about this problem?

Andres,

Yes, you will need to ensure that the proper MS C++ run-time is included with your installer. Your wrapper DLL inherits the same dependencies as the ATOM SDK library. I recommend using a utility called Dependency Walker to ensure you include all required libraries: http://www.dependencywalker.com/

Hello Brian

Looking at the sample apps that come with the SDK, they include the MSVCP90.DLL and MSVCR90.DLL, then I assume that our DLL will have to include or somehow install or make available those same libraries, and that those libraries are the MS C++ Runtime you mention. Am I correct?

How do we include the runtime into our application? Does it need an special installation of files into the system? Or just place these two DLLs besides our DLL?

Andres,

You are correct. In Visual Studio 2008 there is the concept of prerequisites. These can be particular libraries that must be installed before your application will install. In this case we are referring to the VC++ libraries. You should distribute the proper VC++ libraries with your installer, you can use xcopy and register, merge modules, or any method your delpoyment solution supports. Keep in mind that the ATOM App Store will likely come with some version of the VC++ libraries, but it may not be the same one that you are compiling your wrapper DLL with.

There is more on redistributing the VC++ libraries here:
http://msdn.microsoft.com/en-us/library/ms235299.aspx
http://msdn.microsoft.com/en-us/library/ms235290.aspx

Please let me know if I can be of further assistance.

Hello

I am working with Andres on the dll wrapper and I have one question.

Can we perform tests with the release static libraries of the SDK with the "emulator" of the App store? There seems to be more dependencies with our wrapper in debug mode.

Thank you

@BrianDEvArch

thank you so much for you help.

We now have a simple test of a game working in a virtual machine running Windows XP that has no development environment. We can now focus on optimizing the wrapper to manage the game properly in order to submit it

Thanks

You are quite welcome. I am looking forward to seeing the games submitted to the ATOM app store.

发表评论

登录添加评论。还不是成员?立即加入