Jump to content

Canardia

Developers
  • Posts

    4,127
  • Joined

  • Last visited

Everything posted by Canardia

  1. Hi and welcome to the Leadwerks Community!
  2. I was only quoting Paulo Coelho Of course quotes are not personal attacks, because they are just quotes. You don't change what they said or assume anything about them.
  3. It should be stopped to use personal attacks, like "you are", etc.... It's really annoying, because Paulo Coelho also said that intelligent people discuss what was said, and not about the person who said it. Oh, actually it was Eleanor Roosevelt who said it originally: “Great minds discuss ideas. Average minds discuss events. Small minds discuss people.” ― Eleanor Roosevelt
  4. The problem with Shiva is that it's too GUI oriented. Other than that, it's the only engine on the market which can do realtime shadows on mobile.
  5. I think it's all about defining and agreeing on a interface pattern. When all functions and classes follow the same pattern, you could reuse C++ code much easier. Additionally also a game design pattern should be agreed on, which works for all kind of games, except maybe some experimental games. Most things in life can be done much better with agreements, than with forced programs.
  6. Canardia

    Unit Testing

    Can they also jump/climb/crouch over/under obstacles? Is there any way to influence the pathfinding process, or is it always hardcoded like go from point A to point B?
  7. Canardia

    Unit Testing

    There is no excuse in good programming practice to not use a faster method when it is as easy to implement as a slow method. When systems grow bigger, all the little speed differences will exponentially sum of, when one function is calling another function multiple times per loop.
  8. Canardia

    Unit Testing

    The problem with putting functions which are not connected to the context, except that they use the current context, is that when a user makes multiple contexts, then for example context3->DrawImage() will still draw to context1, if it's the current context. Of course you could fix this by doing a context3->Activate() if it's not the current context, but that will make things slower, because a if() check is slower than a integer assignment.
  9. You don't really need pointers when you use vectors. Just have a temporary scope object and populate it with different values before you push it into the vector. The vector takes a copy of it anyway.
  10. Considering that Editor is written in BlitzMax, BlitzMax must have all engine features exposed. I just hope Editor doesn't have too much additional features, which the engine doesn't, like programmatic CSG functions.
  11. Canardia

    Unit Testing

    VS and mingw does not do the constant-in-beginning-of-expression and loop-variable-closest-to-loop optimizations. Every time I make a test program I get the same results.
  12. Canardia

    Unit Testing

    I think I can make LE3 much faster, when I even find lots of things to optimize in those samples. For example: ++x instead of x++ uses CPU registers to speed up a lot (however mingw and vs already does this optimization themselves) 4*(y+x*texture->GetWidth()) instead (constants make a big speed different when placed in front, loop variables closer to loop statement allow registers if(y<128)if(x<128) same here, loop variables closer to loop to utilize registers In most places it won't matter much, if there are no big loops. But when there are big loops, like going through all vertices of a scene, then it might make some notifiable difference.
  13. Canardia

    Unit Testing

    Always use sizeof() with memcpy(), else your code cannot be compiled as 64-bit and on other platforms which have different type sizes.
  14. Josh said today: "not months", so it could mean in less than 2 months, which would fall in the 2013-02 month.
  15. I wanted to collect known facts about LE3, basically what Josh has said publicly. Correct me if I am wrong or reply with more facts I didn't know yet. LE3: Availability will be released in 2013-02 boxed version shipping to all LE3 owners in 2013-03 >> LE2 owners get it earlier via digital download >> LE2 owners get it cheaper [*]Programming can compile for Windows XP, 7 and 8, Android, iPhone, iPad, OSX Linux version coming probably this year also, since Steam goes Linux too apps compile directly to all platforms from the project manager >> scalable architecture, which allows with OpenGL 1.x driver the engine to run on any toaster [*]is written fully in Visual Studio 2010 C++ can be probably recompiled with Visual Studio 2012 C++ or even mingw64 with some additional effort, making a 64-bit version possible [*]uses LuaJIT 2.0 [*]has project templates [*]BlitzMax module is included, because Editor is written in BlitzMax using the engine.dll [*]is multithreading capable [*]can be programmed with C++ and Lua on all platforms >> [*]has pathfinding [*]has an advanced Lua IDE with realtime debugger >> [*]Physics ​uses Newton 3.0 Beta can probably use Bullet 2.8 also when someone writes a driver for it? [*]has scalable physics bodies [*]all models have physics [*]Editor supports .png texture format, because Editor converts it into native .tex texture format supports .gmf model format, because Editor converts it into native .mdl model format replaces the 3D World Studio product line, and can be seen as "3DWS6" has multistep undo/redo has CSG, which could be perhaps used to replace 2.5D terrains? supports prefabs from all models in editor, not just CSG brushes >> can scale models, so it doesn't matter in which size your original model is has flowgraphs for scripting, which can be shared across users fully automatic pipeline [*]Documentation and Support ​has online and printed documentation, which is available also as pdf file >> has a fully ready game called "Darkness Awaits" included with full source code is being developed actively, on daily basis 24/7 online support via registered member forums networking, terrain and ocean to be added at a later date ​has dynamic shadows only in OpenGL 4.x (and OpenGL ES 3.0?) version what else?
  16. Seconds, lots of seconds. 45e16 seconds since the big bang. Hmm, 45e19 milliseconds.
  17. However, quite often it happens that the same code runs differently in debug and release mode, and either the error occurs only in debug mode, or only in release mode. Then it's impossible to debug the program, except with printf(); statements until you find the line which causes the error.
  18. That's the only way you can host a MMO on your own server with 1MBit/s connection. Movement can be point and click style, and fights can be easily predicted based on the equipment and enemy.
  19. You can do it the other way around: Let the player request an item to pick up, and after some time the server will tell the player if the pickup was succesful. It doesn't have to appear as long waiting time, but you can have a game story why it takes sometimes longer to get an item, for example the item must be carefully removed to avoid it getting damaged. Kinda when you remove some jewel from a statue, it takes also time.
  20. I would use pthreads, because it's cross-platform. It's built-in in mingw64, but for VisualStudio it's a seperate download: http://sourceware.org/pthreads-win32/
  21. I still think that network messages should be transferred in a low priority thread, like only once every 60 seconds. The rest can be done with AI prediction.
  22. You need to put the parts of the model which are transparent in the foreground world.
  23. And this is based on self-verified long distance tests?
  24. That's what I thought too, because everyone keeps saying that UDP is faster. But when I tested it, TCP was much faster. I think it's because TCP opens a stream and has permanent connection, while UDP must reconnect and find the route over hundreds of servers each time a tiny packet is sent, which takes time.
  25. I tested with winsock that TCP is generally faster than UDP over long distances. I think RakNet supports also TCP, or you can just use winsock, it's cross-platform has all the things built-in for reliable and fast networking. RakNet is essentially just trying to make UDP more reliable, but it's still slower than raw TCP.
×
×
  • Create New...