Advertisement Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

674 Good

About jeskeca

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. jeskeca

    Programming a simply 2D game

    I second sirweeble.. This could be built using a webpage and javascript.. With a simple server to collect results (parse?). This way you can send anyone the test link in email and they can participste in a browser
  2. In the short term, writing your game in delphi is fine. However, you are right that the industry does not use delphi anymore.. And you will not likely get open source collaboration in delphi. Eventually, I strongly recommend you experiment with C# and VS IDE to replace your delphi fast GUI prototyping. In fact the lead desigber of C# is Anders Hejlsberg, the same person who designed delphi. You might even find you prefer coding in c# vs c++.. Totally acceptable for simpler games, and also the language used by unity.
  3. jeskeca

    Full dynamic octree, worth it ?

    Dynamic BVH is a good option for moving objects. They can be very cheaply refit, and incrementally reoptimized. One of BVHs main advantages is that objects are listed only once, and cells overlap.. Making updates and some queries cheaper. Octree, however, can more cheaply answer geometric neighbor queries - such as for a physics simulation. As for whether it is "worth it", that depends on your situation. How many dynamic objects? How many queries per frame?
  4. Trusting clients, as you are doing, is one of the easiest solutions and a good place to start. If you want to prevent cheating, or provide a more fair system in the face of a lagging client, you'll need to stop trusting clients and use client/server with some form of latency compensation.
  5. My open source educational simplescene project has a c#/opengl implementation of cascaded shadow maps which may be a good source example..
  6. Software is a profession of leverage. Programmers always have the best leverage working at the top of the stack. Programmers will be needed there until the invention of machine intelligence (AI). We started with punchcards and machine code. We moved on to macro assemblers, then algol-like compilers, including C. Now we use C++, C#, Java as higher level languages. At the same time, we leverage domain specific libraries (and hardware). If you want to write a game today, would you dust off an old mainframe and write machine code? No. You write at the top of the stack. The latest hardware, the latest languages, the latest libraries, the latest engines - whatever makes you most efficient. At the same time, all libraries and middleware have assumptions and limitations because of what they try to generalize. Knowing when to innovate by rethinkibg assumptions is critical. For example, Minecraft was written without an engine because at the time there was no available voxel game engine. He innovated by breaking the "rules" of existing middleware. As someone else said, "it takes a village". Find something you like to do, and find others to fill in the missing pieces. If you want to be a one man team, then set your expectations properly, and leverage everything you can to succeed.
  7. jeskeca

    Game Engine

    If you are familiar with C#, start with a tutorial to make a simple game in wpf or s.w.f, like this one.. At some level, the main difference between a game and a "standard" windowed application, is that a game has a update function called on a periodic interval. This way, even if the user does nothing, the game can advance time and do something.
  8. Unity is the only reasonabke answer to this question. In addition to all the little known games using it, take a look at Blizzard's hearthstone. It runs well on ios, android, pc, and mac. Picking Unity is an easy choice. Building a game is hard. Focus on that.
  9. Another option is to use a cross language encoding like thrift, protocol buffers, or even xml.
  10. I agree with wintertime.. One solution to this specific problem is to switch to a bounding volume hierarchy using spheres as the bounding volume, instead of aabbs. However, normally an octree would only put objects in leaf nodes, and the octree leaves your asteroids are in shouldnt touch the planet. Your large planet, however, would be linked in many many octree leaves.
  11. jeskeca

    How do Open World games work?

    The wow open world engine is a little different than farcry or arma, but it touches on similar issues and the file firmat has been reverse engineered...
  12. If i were making the game you described... I would start by coding the in-browser display engine. The best ways to code this are Flash or WebGL (could use Three.js). You could use unity, but users will need to install unity player, which is not ideal. The in-browser display engine will talk to the server for various things, like fetching areas of the world, assets, etc. This server could be in Ruby. If you want to prevent cheating, the player session could be fully controlled by the server. While this also could be done in Ruby, it isn't the best choice as it is slow and dynamic typed. Better IMO would be Java, C#, or even C++. For friend list and chat, there are ooen source XMPP servers you can use. For forums, there are open source options like phpBB.
  13. Python and pygame are a great easy way to get started with simple 2d games. C# and unity are a great way to get started with 3d games, and can be used to do 2d games as well. It is a bit more complex than pygame, but also more capable. I recommend you take one of those routes... Either one is fine. The biggest distinction between languages you will deal with right away is dynamic vs static typing. Dynamic typing means you dont declare types, but it also means the compiler can't check them for you. Most code for games is statically typed (usually c++), though dynamic scripting languages are also often used as well (python, lua). Javascript/v8 is fast, but not as fast as c# or c++, for many complex reasons. However, for starting out, this doesn't really matter. Js/webgl is plenty fast enough for what you need. Persobally, i think it is easier to deal with complex gaming APIs using static typing, so i would stay away from javascript or python for anything other than really simple projects. C# and C++ are more similar than different. One of the biggest differences is that C# uses a garbage collector and is memory-safe and type-safe but has gc pauses, while c++ uses manual memory management and manual pointer management but has no gc pauses. For AI research, there isn't a big difference. For real-time work, such as robotics vision, c++ is like preferred to avoid gc pauses. If you really want to do AI work, you should get an advanced degree in AI and get a job at a place that does robotics or AI research.
  14. jeskeca

    Material manager

    The fastest way to lookup a key match is a hashtable. A binary tree im sure is also fine. You dont need to use the same datastructure for indexed lookups as for storing the data. If you really prefer a certain in memory layout, then use it... And just index into that layout for fast lookup.
  15. I understand the frustration. Many engines are made to be flexible without changing the code, and this comes at a high cost. Both in complexity, and maintainability. However, don't let your frustration with open source ogre or a half baked kickstarter project cloud your vision. Unity and UE4 are solid commercial engines, which will be around for a long time, and which have lots of functionality you probably want (animation, shadowmapping, deferred shading, hdr, particle systems, cross platform) Are they right for your project? I think unless there is a deal-breaker, you will probably ship the game sooner with unity or ue4. A deal breaker might be GPU skinning (afaik neither unity or ue4 do this), or the need for 80%+ performance efficiency, or extensive custom render passes.
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!