ElectricBliss
30-03-2006 09:15:39
My friend and I have been working on this for days now and still no joy. OgreNotNet has been one of the most frustrating programming experiences I’ve ever had.
I’m creating this post in the hopes that someone might be able to show where I’m going wrong. I’m on the ropes and am about to give up and go with Axiom. (I was able to get Axiom up and running in the first hour.) But this has been hell with the dlls.
My current situation:
Win XP Pro, .NET 2.0, DirectX Feb 2005 SDK, VS Express 2005 C++ and C#, Microsoft Platform SDK Server 2003
Used TortoiseCVS to checkout ogreaddons/ogredotnet and put the sandbox in: c:\Ogre\ogreaddons\ogreaddons\ogredotnet
Downloaded and installed OgreSDKSetup1.2.0_RC1_VC80.exe to c:\OgreSDK
Downloaded swig and put it in c:\Program Files\swigwin-1.3.29
Created an Environment variable, name: SWIG_HOME, value: C:\Program Files\swigwin-1.3.29
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C++ 2003
Removed GangstaBindings, as it never seems to work.
Right-clicked on CeguiBindings.i and chose Compile.
Right-clicked on OgreBindings.i and chose Compile.
Right-clicked on OgreBindings_Cegui.i and chose Compile.
Closed VS C++ 2003.
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C++ 2005
Went through the Visual Studio Conversion Wizard
Closed VC++
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C# 2005
Went through the Visual Studio Conversion Wizard
Built the release version of Math3D, OgreDotNet, and CeguiDotNet.
Copied the files it created from C:\Ogre\ogreaddons\ogredotnet\Bin\Release to C:\OgreSDK\bin\release
Created a new Console App in VS C# 2005.
Added C:\OgreSDK\bin\release\OgreDotNet.dll to the references
Here is the code:
The thing errors out with: “A first chance exception of type 'System.TypeInitializationException' occurred in OgreDotNet.dll”
So I find, in the InnerException this: {"Unable to load DLL 'OgreBindings': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}
Okay, so I must assume that OrgeBindings must be compiled in C++. (But this is never mentioned in the wiki.)
So I start building OrgeBindings in VSE C++ 2005.
The compiler errors out with this: c:\ogre\ogreaddons\ogredotnet\ogrenet\Initialiser.h : error C4335: Mac file format detected: please convert the source file to either DOS or UNIX format
[Need I mention that this is a TOTAL DRAG, as the build takes a long time. Then the build has to start over again after you convert each file. Good god, is there any way to tell the compiler to auto-convert them???]
So I have to double click the error, convert, then rebuild, over and over and over again. Is this what you guys are doing? Please tell me there is an easier way…
Here is the list of Mac files:
c:\ogre\ogreaddons\ogredotnet\ogrenet\Initialiser.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\EventHandler.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\GpuProgramExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\MovableObjectExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\KeyFrameExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\StaticGeometrySubClassProxies.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\SimpleRenderableDirector.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\Line3D.h
Now I copy the dlls that it made:
OgreBindings.dll
CeguiBindings.dll
OgreBindings_Cegui.dll
To C:\OgreSDK\bin\release
Now I rebuild my test app and run it… I get the same error as before: “A first chance exception of type 'System.TypeInitializationException' occurred in OgreDotNet.dll”
The InnerException contains this: {"Unable to load DLL 'OgreBindings': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}
I put it in the same directory as the others: C:\OgreSDK\bin\release? Where is it looking for OgreBindings? Can’t seem to add it to the project either…
I get the same errors trying to get the demos to run too.
The OgreSDK in C++ 2005 works perfectly and all the demos run. It’s just OgreDotNet that doesn’t work.
I use C# because you don’t have to be a demi-god just to use it. But to get OgreDotNet to work you have to be Zeus himself! Is there anyone above mere mortal here who can help?
Sincerely,
EB
I’m creating this post in the hopes that someone might be able to show where I’m going wrong. I’m on the ropes and am about to give up and go with Axiom. (I was able to get Axiom up and running in the first hour.) But this has been hell with the dlls.
My current situation:
Win XP Pro, .NET 2.0, DirectX Feb 2005 SDK, VS Express 2005 C++ and C#, Microsoft Platform SDK Server 2003
Used TortoiseCVS to checkout ogreaddons/ogredotnet and put the sandbox in: c:\Ogre\ogreaddons\ogreaddons\ogredotnet
Downloaded and installed OgreSDKSetup1.2.0_RC1_VC80.exe to c:\OgreSDK
Downloaded swig and put it in c:\Program Files\swigwin-1.3.29
Created an Environment variable, name: SWIG_HOME, value: C:\Program Files\swigwin-1.3.29
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C++ 2003
Removed GangstaBindings, as it never seems to work.
Right-clicked on CeguiBindings.i and chose Compile.
Right-clicked on OgreBindings.i and chose Compile.
Right-clicked on OgreBindings_Cegui.i and chose Compile.
Closed VS C++ 2003.
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C++ 2005
Went through the Visual Studio Conversion Wizard
Closed VC++
Opened C:\Ogre\ogreaddons\ogredotnet\OgreDotNet.sln with VS C# 2005
Went through the Visual Studio Conversion Wizard
Built the release version of Math3D, OgreDotNet, and CeguiDotNet.
Copied the files it created from C:\Ogre\ogreaddons\ogredotnet\Bin\Release to C:\OgreSDK\bin\release
Created a new Console App in VS C# 2005.
Added C:\OgreSDK\bin\release\OgreDotNet.dll to the references
Here is the code:
using System;
using OgreDotNet;
namespace OgreTry5
{
class MyApp : ExampleApplication
{
protected override void CreateScene()
{
Console.WriteLine("test");
}
[STAThread]
static void Main(string[] args)
{
using (MyApp app = new MyApp())
{
app.Start();
}
}
}
}
The thing errors out with: “A first chance exception of type 'System.TypeInitializationException' occurred in OgreDotNet.dll”
So I find, in the InnerException this: {"Unable to load DLL 'OgreBindings': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}
Okay, so I must assume that OrgeBindings must be compiled in C++. (But this is never mentioned in the wiki.)
So I start building OrgeBindings in VSE C++ 2005.
The compiler errors out with this: c:\ogre\ogreaddons\ogredotnet\ogrenet\Initialiser.h : error C4335: Mac file format detected: please convert the source file to either DOS or UNIX format
[Need I mention that this is a TOTAL DRAG, as the build takes a long time. Then the build has to start over again after you convert each file. Good god, is there any way to tell the compiler to auto-convert them???]
So I have to double click the error, convert, then rebuild, over and over and over again. Is this what you guys are doing? Please tell me there is an easier way…
Here is the list of Mac files:
c:\ogre\ogreaddons\ogredotnet\ogrenet\Initialiser.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\EventHandler.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\GpuProgramExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\MovableObjectExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\KeyFrameExt.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\StaticGeometrySubClassProxies.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\SimpleRenderableDirector.h
c:\ogre\ogreaddons\ogredotnet\ogrenet\Line3D.h
Now I copy the dlls that it made:
OgreBindings.dll
CeguiBindings.dll
OgreBindings_Cegui.dll
To C:\OgreSDK\bin\release
Now I rebuild my test app and run it… I get the same error as before: “A first chance exception of type 'System.TypeInitializationException' occurred in OgreDotNet.dll”
The InnerException contains this: {"Unable to load DLL 'OgreBindings': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}
I put it in the same directory as the others: C:\OgreSDK\bin\release? Where is it looking for OgreBindings? Can’t seem to add it to the project either…
I get the same errors trying to get the demos to run too.
The OgreSDK in C++ 2005 works perfectly and all the demos run. It’s just OgreDotNet that doesn’t work.
I use C# because you don’t have to be a demi-god just to use it. But to get OgreDotNet to work you have to be Zeus himself! Is there anyone above mere mortal here who can help?
Sincerely,
EB