Jump to content

Brent Taylor

Members
  • Posts

    215
  • Joined

  • Last visited

Posts posted by Brent Taylor

  1. A real Apple computer has a Motorola 68000 or PowerPC CPU, although I think the latter is just a hopeless attempt to get forward with the silence of Motorola at that time. And then putting an Intel CPU into a Mac basically makes it a non-Mac. It's just a simple PC. I can paint an Orange, Banana or Apple on my PC too, but it doesn't make it a Motorola.

     

    The major difference between a PC and a Mac/Amiga is a that PC is always 8 bit, and Mac/Amiga is truly 32 bit, and also superscalar, which means they can do 32 CPU instructions in the time a PC can only do 1. It's a technology you can't really even compare.

     

    Normally I'd refute this, site articles and resources, even do a bit of logical reasoning to explain why Meta's wrong here. However, I'm just tired of dealing with the BS. I'm just going to leave it here and label it as a typical baseless Meta response. It's not worth my time anymore.

  2. Multi boot is the best anyway. I have Windows and 10 linuxes, and a few other OS on my C: drive :( I could also install OSX, because Apple made it impossible to use with an Apple computer, since it needs an Intel CPU, so basically it runs only on a PC (no matter if it has an apple logo or not on it), which apple made illegal also.

     

    I can already tell I'm going to regret asking this, but what do you mean Apple made it impossible to use OS X with an Apple computer?

  3. That means I'll be the one maintaining the VS2010 C# project for .NET 4, I guess.

    But think of all the functions that have optional parameters in L3D. You can't have that with VS2008 C#.

     

    EDIT: You can make overloaded functions with less parameters, of course, but it's annoying, long and useless when you could use the proper technology.

     

    Keep in mind, that I don't think he's mentioned anything about a C interface to the engine. For .NET support, you're going to have to write a full on wrapper via C++/CLI as P/Invoke won't be an option.

  4. No Josh, you remember now GCC from BlitzMax times, where Mark always hardcoded -O2 into g++ and added some stupid GC to BlitzMax. A pure g++ program with -O6 is the fastest you can find on this planet.

     

    Seriously, start pointing to some real data on this or you're just spouting bull.

  5. Leadwerks should not use the old VS2008 files with the argument that its more easy for the developer. Leadwerks should use the best tools and resources thats possible and leave the distrubution problem to the developer.

     

    I agree with this. However, I don't think having an officially supported process for creating an installer is a bad idea either.

  6. You only need to make a simple test program which tests the essential speed issues: loops and memory allocations. MinGW wins VS2008/2010 by far.

    Also the compiling time with MinGW+CodeBlocks is much faster, like 1 second vs 30 seconds, so you save a lot of development time too.

    That again saves your nerves and you can produce more games and higher quality games.

     

    You definitely want to do some more research into optimization levels and such and precisely how they effect the resulted code performance on different architectures. As for compilation time, don't confuse VS with MSVC. MSVC itself is incredibly fast, on par with GCC and faster in certain cases. VS however slows it down significantly due to the deep inspection it does of source code at compile time.

     

    You have to understand, comparing a compiler is not trivial. I'm going to quote Maciej Piechotka here:

     

    "

    Comparing compiler is not trivial:

    • It may vary from processor to processor. GCC may better optimize for i7 and MSVC for Core 2 Duo or vice versa. Performance may be affected by cache etc. (Unroll loops or don't unroll loops, that is the question :D ).
    • It depends very largely on how code is written. Certain idioms (equivalent to each other) may be preferred by one compiler.
    • It depends on how the code is used.
    • It depends on flags. For example gcc -O3 is known to often produce slower code then -O2 or -Os.
    • It depends on what assumption can be made about code. Can you allow strict aliasing or no (-fno-strict-aliasing/-fstrict-aliasing in gcc). Do you need full IEEE 754 or can you bent floating pointer calculation rules (-ffast-math).
    • It also depends on particular processor extensions. Do you enable MMX/SSE or not. Do you use intrinsics or no. Do you depend that code is i386 compatible or not.
    • Which version of gcc? Which version of msvc?
    • Do you use any of the gcc/msvc extensions?
    • Do you use microbenchmarking or macrobenchmarking?

    And at the end you find out that the result was less then statistical error ;)

     

    Even if the single application is used the result may be inconclusive (function A perform better in gcc but B in msvc).

    "

     

    Using a simple test application is doing yourself a great injustice and is simply naive.

  7. Leadwerks.com is a family website. We're all a big family. Like the mafia, only less cool.

     

    Yes yes, censorship for the sake of a "family" location. Think of the children and all that. I hate politicians. I really do. I'm not one to agree with censorship, for any reason. But that is neither here nor there. Back on topic. :D

  8. I will be maintaining a MinGW lib then, it will be create much faster games than VS2008/2010 :D

     

    Site reputable sources for this or I call bull. Hint: I've done enough research into this to already know it's bull. So be cautious.

     

    EDIT: Since when have we had a swearing/word filter on these boards? Down with censorship! ;)

  9. Eliminating VS2008 support is not an option. If I have to choose between VS2008 and 2010, 2008 will win as long as 2010 requires additional packages.

     

    If you guys want support for both VS2008 and 2010, that can be done. It's just another project we'll have to maintain, but I won't be the one doing it, so it's not that big of a deal.

     

    Err, I assume you mean you have someone on your team that will maintain it and release a VS 2010 lib regularly? Remember, C++ libs are not compatible between compiler versions. A VS2008 lib will generally not work in VS2010, or the other way around. The same is true for GCC libs, they aren't compatible between compiler versions. So unless we have access to the source (we don't), someone on your end will have to take care of it.

  10. Maybe it would be worth investigating how much work it would be to take an open source installer (Assuming there is one?) and develop a publishing workflow that builds installer packages. The open source installer should provide options to silently pre-install other packages before the main install, and so you could add that as part of your publishing pipeline.

     

    See, this is a reasonable solution. NSIS would work quite well for this.

  11. Ack! Are you serious? Microsoft really has entrenched itself deep if this is true. I switched to Code:Blocks for a few reasons, but I hope I don't run into this problem for awhile.

     

    Well it's pretty simple. If you're providing only a library to link against, it's compiler specific due to differences in name mangling, argument passing order and a few dozen other little things that just aren't compatible between compilers, or versions of a compiler for that matter. Much like you can't use a MSVC2008 lib with MSVC2010, you can't use a GCC3 lib with a GCC4 compiler. Just the way it is.

     

    So, how does Unity do 3D web play?

    Unity is a pretty complex beast in general, but the gist of it is that Unity is a complete sandboxed environment. Everything is embedded .NET so they have complete control of the environment. It's precisely what Josh is looking into doing with Lua.

  12. Doesn't HTML5 support 3D buffers?

     

    Yes, sort of. Chrome, Safari and Firefox support WebGL just fine (at least under Windows Vista and up). On the other hand, Microsoft has announced they will not be supported WebGL in IE for the foreseeable future. To be honest, WebGL is extremely insecure right now. It's theoretically possible to break out of the sandbox via the video card.

     

    @Josh

    I haven't looked into embedding any sort of application in a browser in years and I know a lot more security and sandboxing is in place these days. So take what I'm about to say with a healthy bit of skepticism.

     

    It's possible, at runtime, for a C++ application to call into a DLL. In fact the Quake 2 engine was designed to do this for all game content. The engine was the executable and would call into a dll that had all the actual game content. Lua does this as well when using C libs written for it.

     

    Now, again I'm unsure exactly what security measures are in place these days in the browser for this kind of thing, but I see no reason why games couldn't be compiled as a DLL with a specific entry point that's called by the engine and linked at runtime. In fact this is exactly what your current C++ headers are doing for LE2. You'll just need to do it in reverse.

     

    Theoretically this would allow your users to link in any libs they need without modifying or requiring a custom plugin for each game in the browser.

     

    EDIT: On further consideration, this is an extremely bad idea. I can think of a number of rather serious attack vectors for this kind of thing that you really can't protect yourself from. I'd highly recommend disabling the use of external C libs from Lua while in the browser as well.

  13. I don't mean to derail this thread, but I'd like to see your evidence for such stats. The Steam marketplace is fast becoming the biggest marketplace for PC games. I think its a bit rich to be saying 90% of the games you expect LE3D to publish will be via web browser.

     

    He's right. Targeting Facebook is a big deal right now. I'm more curious as to how he intends this to work if developers are using C++. I can certainly see how this would be fairly doable with Lua.

     

    @Josh

    How are you intending the web plugin to work? Strictly by Lua?

     

    For C++ users, is each game going to have it's own plugin? Are you going to use a dll hook? Something else?

  14. 90% percent of published Leadwerks3D games will probably focus on low-end graphics, and if they are run on a PC, they will probably be played through a web browser. I'm the last person in the world to admit this, but that's the reality of where the games market is. I'm trying to get the web plugin installer down to about 2 mb. The VC distrib package would triple that size. Not a big deal for you and me, but remember that this will be played by Grandma on her netbook connected to the neighbor's wifi.

     

    To be honest, I wasn't even aware that you were making a browser plugin available. ;) Still, even with the size difference, it's going to be a drop in the bucket compared to any games that actually use the plugin I'd think. And as mentioned, if you use the silent installer, it requires no user interaction to install at all.

     

    Of course there's people who do games with high-end graphics, but I can't stay in business if I only provide software for them. At the very least, the engine has to be able to scale between the two extremes.

    This I agree with entirely.

     

    If the VC2008 situation does work out like they are saying now, then I will consider VC 2011, but we've seen MS announce the end of support for something and then keep going. I find it incredible that they no longer support C++ programs out of the box on any version of Windows with a wide install base. Code::Blocks + GCC would probably work better on Windows than Visual Studio, if nothing improves.

     

    I think you may have misunderstood. The redist will be supported pretty much permanently. I'm talking about the availability of Visual Studio 2008 to developers using your engine. Microsoft only supports up to one version behind (of the Express Editions that is). VS 2011 is on the way and 2008 won't even be available for download anymore.

     

    In addition, I would not recommend GCC/MinGW on windows as the primary development environment. You're going to find the vast majority third party, proprietary, libraries are compatible strictly with Visual Studio.

  15. Isn't it possible to make a silent installer for that? I mean a lot of steam games install C++ redistributable.

    http://blogs.msdn.com/b/astebner/archive/2010/10/20/10078468.aspx

     

    And this is precisely what you're supposed to do.

     

    I estimate with pretty good confidence that the majority of times a Leadwerks game is or will be run on an end user's computer, it won't involve an installer at all. Someone will email a zip file, or it will be downloaded through a web browser plugin, and no traditional installer program will be used.

     

    Admittedly this is true. I can't help but think from the perspective of someone selling commercial games. Leadwerks, at least from what I've seen on the forums, is most often used for tinkering or visualizations. The engine has a lot of potential, it's just not really being used for much in terms of commercial ventures. :)

     

     

    In any event, when that doesn't work it falls back to me. The OpenAL installer alone has caused me a tremendous amount of problems.

     

    My question is why does this fall back to you? Part of your problem is you're not using a traditional installer nor are you actually silently installing the OpenAL redist. Switch to a reasonable installer and you should be just fine.

     

    As for people distributing their own games, it should betheir responsibility to get the 2010 redist package installed for their users, provided it's mentioned explicitly in the documentation you provide. ;)

     

    Again, it's obviously your choice. I just don't agree with your reasoning. It's not complex to get a real installation package together, nor is it expensive, NSIS and Inno Setup are both free and fully featured.

     

    I also feel that you have a bit of a contradiction here. You're largely targeting high end video hardware. Hardware that your average computer buyer simply doesn't have. Those who do have that hardware tend to have a much better understanding of what they are doing. Running an installer is much less of an issue in this case. Now if you were writing a standard bit of desktop software (say, an office application strictly for the sake of an example), I'd agree with you that every additional screen is going to scare people off. However I'd likely still argue for a silent installation of the VS 2010 redist. Please remember, in a year, there will no longer be ANY support for VS 2008. You won't be able to download it nor will the docs be available any longer. I see this as an important showstopper issue.

  16. I believe there's a significant number of computers that don't have the VC 2010 Redistributable Package installed.

     

    That seems like a rather easy thing to solve. If it wasn't obvious by the name, it's designed to be redistributed with any application that is compiled against the latest version of MSVC. It's downright trivial to add a silent install option in a game's installation package.

     

    In addition, support for Visual Studio 2008 Express is being phased out.

     

    Obviously the choice is yours, but that seems to be a pretty silly reason.

  17. We use Visual Studio 2008 for Windows, Xcode for OSX and iOS, and Eclipse for Android.

     

    Why Visual Studio 2008 over the latest 2010? Did you run into some sort of compatibility issue?

     

    As for the Poll, I use VIM and a few custom scripts on any and all OS's.

  18. Great learning resource, if only they took adobes stand and allow commercial work with the software.

     

    Unless something has changed recently, Adobe doesn't allow you to do commercial work with the educational licensed copies either.

×
×
  • Create New...