Irrlicht.NET
Posted: Tue Feb 22, 2005 11:51 pm
Since the release of 0.8 heralded better .NET support I decide to play around with Irrlicht and C#.
I looked around for a while and found a suitably advanced game written in c++ using Irrlicht and attempted to port it. I chose IrrTetris which can be found in the links section on the main site. I spent the day Saturday porting all of the code over to the structure and syntax of C#, which took considerably more changes then I originally expected. Not that this is a bad thing, I think Irrlicht.NET's difference fit in perfectly with typical .NET coding conventions.
I encountered numerous issues porting the code, some of which I was able to work around (methods in the wrapper not be declared abstract, etc). However there were numerous things I simply couldn't work around. For example I could not find a way to get the root scene node, nor is there ANY GUI control support in the .NET Irrlicht wrapper. The PreRender event simply doesn’t exist, and numerous other issues arose. Many of these issues make it impossible to make CustomSceneNode’s of any kind.
I will try and document as many of these as possible, although I'm sure Niko is already quite aware. That said I'd like to propose an idea. I understand Niko wanting to keep the engine under his control until 1.0, however, the .NET wrapper is for the most part, grunt work. Niko's time is far too valuable for him to replicate work he has already done once. I'd like to suggest that he would allow those of us as in community with significant .NET experience to complete the .NET wrapper and keep it up to date with changes to the C++ engine.
Obviously Niko would still have the final say, but at least the wrapper would be complete and he could tweak or instruct us on what needs to be changed.
These are just some ideas I've been toying around with since I've become a big fan of C# lately and would love to be able to use Irrlicht along with it, however, as of now it simply isn't if it can't even be used to create Tetris.
-Charles Morton
I looked around for a while and found a suitably advanced game written in c++ using Irrlicht and attempted to port it. I chose IrrTetris which can be found in the links section on the main site. I spent the day Saturday porting all of the code over to the structure and syntax of C#, which took considerably more changes then I originally expected. Not that this is a bad thing, I think Irrlicht.NET's difference fit in perfectly with typical .NET coding conventions.
I encountered numerous issues porting the code, some of which I was able to work around (methods in the wrapper not be declared abstract, etc). However there were numerous things I simply couldn't work around. For example I could not find a way to get the root scene node, nor is there ANY GUI control support in the .NET Irrlicht wrapper. The PreRender event simply doesn’t exist, and numerous other issues arose. Many of these issues make it impossible to make CustomSceneNode’s of any kind.
I will try and document as many of these as possible, although I'm sure Niko is already quite aware. That said I'd like to propose an idea. I understand Niko wanting to keep the engine under his control until 1.0, however, the .NET wrapper is for the most part, grunt work. Niko's time is far too valuable for him to replicate work he has already done once. I'd like to suggest that he would allow those of us as in community with significant .NET experience to complete the .NET wrapper and keep it up to date with changes to the C++ engine.
Obviously Niko would still have the final say, but at least the wrapper would be complete and he could tweak or instruct us on what needs to be changed.
These are just some ideas I've been toying around with since I've become a big fan of C# lately and would love to be able to use Irrlicht along with it, however, as of now it simply isn't if it can't even be used to create Tetris.
-Charles Morton