btgames Posted December 9, 2009 Share Posted December 9, 2009 Thinking about purchasing the engine and i see the tutorials are all for visual studio. I am very comfortable with dev c++, do i have to use visual studio with the engine or can i stick with what i have? Might be a crazy question but was just wondering Quote Link to comment Share on other sites More sharing options...
Scott Richmond Posted December 9, 2009 Share Posted December 9, 2009 You can use whatever editor you wish. Only catch is that you'll need to setup Dev C++ on your own, while the LE wizard generates the required project files for VS automagically. Quote Programmer, Modeller Intel Core i7 930 @ 3.5GHz | GeForce 480 GTX | 6GB DDR3 RAM | Windows 7 Premium x64 Visual Studio 2008 | Photoshop CS3 | Maya 2009 Website: http://srichnet.info Link to comment Share on other sites More sharing options...
Laurens Posted December 9, 2009 Share Posted December 9, 2009 You can keep using Dev C++. Quote Link to comment Share on other sites More sharing options...
afecelis Posted December 9, 2009 Share Posted December 9, 2009 Won't it require a special dll compiled with GCC in order to be able to use LE with DevC++? Besides that, a Devc++ project option should be added to the project wizard. It would be cool indeed since GCC gets along pretty nicely with Opengl. This would make the Linux port more feasible EDITED: NM my comment about the project wizard; I just read what DJDD mentions about it. Quote Win8.1 Pro X64/ Intel core I7 @ 3.5GHz / 32GB DDR3 SDRAM / GeForce GTX 660+760/ VC++ Express 2013/ Blender /Unwrap3dpro3 /Modo 8 Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 You can use the same dll with any programming language, so it's the same also which C++ compiler you use. A Linux port would be very interesting, since currently LE is compiled using MinGW C++, which is a GNU C++ port to Windows, but it's much slower than the real GNU C++ under Linux. Under Linux, BlitzMax uses the real GNU C++, which makes about 400% (=5 times) faster code than BlitzMax under Windows, if you do the math: MinGW is 2.5 times slower than VC++, VC++ is 2.5 times slower than GNU C++. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Niosop Posted December 9, 2009 Share Posted December 9, 2009 You can use the same dll with any programming language, so it's the same also which C++ compiler you use. A Linux port would be very interesting, since currently LE is compiled using MinGW C++, which is a GNU C++ port to Windows, but it's much slower than the real GNU C++ under Linux. Under Linux, BlitzMax uses the real GNU C++, which makes about 400% (=5 times) faster code than BlitzMax under Windows, if you do the math: MinGW is 2.5 times slower than VC++, VC++ is 2.5 times slower than GNU C++. MinGW is 2.5x slower than VC++? Do you have any benchmarks to show this, I haven't seen that myself, but of course it probably depends on the code. Were you using equivalent compiler options? If MinGW really is that much slower, then why is LE built using it then? Quote Windows 7 x64 - Q6700 @ 2.66GHz - 4GB RAM - 8800 GTX ZBrush - Blender Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 Yeah, I have the benchmark programs still somewhere, but I could rerun them for the current versions of MinGW/VC/GNU to see if anything has changed. I used all possible optimizations also, and got some more speed out of MinGW too than with its default settings. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Niosop Posted December 9, 2009 Share Posted December 9, 2009 Since you're a source owner, I'm assuming you could recompile the engine using VC++ (assuming there's not TOO many things you have to change to make VC++ happy) and check actual framerate difference on a scene. If you suddenly find yourself w/ an excess of free time and no way to fill it, knowing if using VC++ would increase the engine speed could benefit the community a lot if the engine.dll runs significantly faster. Is there a lot of assembly that would be a pain to modify in there? Quote Windows 7 x64 - Q6700 @ 2.66GHz - 4GB RAM - 8800 GTX ZBrush - Blender Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 It's not that simple. I would also need BlitzMax C++ compiler (bcc.exe) source code in order to compile LE with VC++. It was available earlier, but I think it's not available anymore. However, I've played around with converting few functions to C++, but it's a huge job to convert everything to native C++. Meanwhile, I reran all the speed tests again, and Debian GNU C++ wins! I remembered wrong, VC++ was not 2.5 times slower than GNU, but still a lot slower. Currently MinGW is 1.902 times slower than VC++, and VC++ is 1.315 times slower than GNU: MinGW default:Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=41.594000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=16.937000s. Total time=58.531000s. VC default: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=41.609000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=15.469000s. Total time=57.078000s. VC -O3: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=41.593000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=15.453000s. Total time=57.046000s. MinGW -O3 -mtune=i686: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=37.437000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=15.766000s. Total time=53.203000s. VC IDE default: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=15.078000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=12.953000s. Total time=28.031000s. VC IDE -O3: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410063201, n=100000.000003, time=15.078000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=12.890000s. Total time=27.968000s. openSUSE 11.2 GNU -O3 -mtune=i686: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410065408, n=100000.000009, time=16.060000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=5.310000s. Total time=21.370000s. Debian 5.0 GNU -O3 -mtune=i686: Speedtest 1.0 © 2008 Siipi Counting 10 billion floating points... Done. i=1410065408, n=100000.000009, time=16.650000s. Creating and deleting 1 billion class objects... Done. i=100000000, time=4.620000s. Total time=21.270000s. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Niosop Posted December 9, 2009 Share Posted December 9, 2009 Thanks for the info, it is enlightening. Just for fun you might want to throw Sun Studio 12 into the mix Not that it would be applicable to LWE at this time. I didn't realize that the core engine was actually written in BlitzMax, I thought it was just a supported language. Or is it just required as a dependency for the BlitzMax support? Quote Windows 7 x64 - Q6700 @ 2.66GHz - 4GB RAM - 8800 GTX ZBrush - Blender Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 LE is partly written in BlitzMax, some functions are in C++ (newton.dll is completely written in C++), but most functions are written in OpenGL and GLSL. I guess in future more and more functions will be written in C++ to replace the BlitzMax functions, since it can be done on-the-fly, as BlitzMax can compile BlitzMax, C/C++ and Assembler code directly. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
afecelis Posted December 9, 2009 Share Posted December 9, 2009 Lumooja, with Irrlicht there are 2 separate dlls of the engine according to the IDE+Compiler you use (1 compiled with MSVC and the other for Devc++/Codeblocks compiled with Migw/GCC), however, if you start a project in Msvc and use Mingw's dll the program will crash when running it, and same thing occurs viceversa. Are you sure we can just use the dlls included in LE and start a project manually either in MSVC or Devc++? I'll give it a try And when you guys talk about compiling the source, is the source included when we update the SDK? regards, Alvaro Quote Win8.1 Pro X64/ Intel core I7 @ 3.5GHz / 32GB DDR3 SDRAM / GeForce GTX 660+760/ VC++ Express 2013/ Blender /Unwrap3dpro3 /Modo 8 Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 Yes, I'm absolutely sure, since LE's dll uses stdcall convention, which is the standard calling convention for any and all Windows programs. Heck, you could even use LE with Fortran, Lisp, ADA or COBOL I've played around with Irrlicht also, but I don't know why they can't manage to unify their code. Well, it's not as clean as Ogre, but it has better model support (which a game engine doesn't even need). Irrlicht has also a custom software renderer, which is nice, but the visual quality is quite horrible The source of LE is not included in the SDK. It's a special license, from which the only public information is that such thing exists. Many other engines have a similar convention too, source is not officially marketed, but when asking about it, you will find that there is indeed such an option. Source owners don't usually do anything with it, they just need it as a business backup in case the original manufacturer is not in business anymore. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
afecelis Posted December 9, 2009 Share Posted December 9, 2009 ahhhh got it! cool to know that. Or unless you use a specific MFC thingie that will bound your program exclusively to MSVC, right? Otherwise and as long as your code remains standard C++ you can cross compile your apps? coolies! So I definitely gotta try it out. Then...that Linux version is much closer than I thought! The only issue here would be compiling the toolset for Linux. Interesting...interesting...mmmhhh mmhhhh. ps. I'm very fond of Irrlicht since it's the one that got me started in the pretty basic C++ stuff I know. I agree its model support is great, it's easy to learn and use through its tutorials, but I haven't got a clue about code cleanliness, heheehhe Still you're right, there are many things to update to keep up with today's standards but the team is working hard on it. cheers and thx for the explanation! Alvaro Quote Win8.1 Pro X64/ Intel core I7 @ 3.5GHz / 32GB DDR3 SDRAM / GeForce GTX 660+760/ VC++ Express 2013/ Blender /Unwrap3dpro3 /Modo 8 Link to comment Share on other sites More sharing options...
Canardia Posted December 9, 2009 Share Posted December 9, 2009 A Linux version is actually as close as me getting the first cup of coffee with milk on the coming Saturday, and pressing the compile button when I multi-booted into Debian (I need to do some preparations first, like installing the newest BlitzMax for Linux (had some problems with openSUSE earlier since it conflicted in the GNU C++ version, but Debian might just work fine)). We'll see what happens, at some point there were some Windows specific bindings (like the TTF font function, but that has been long gone since), but at the moment I can't recall any, so it might just work Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Josh Posted December 11, 2009 Share Posted December 11, 2009 The Newton module has to be edited to support Linux/MacOS, and the OpenAL binding needs some small changes, but other than that everything should compile and run the same on all platforms. Quote My job is to make tools you love, with the features you want, and performance you can't live without. Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.