• Advertisement
  • Popular Tags

  • Popular Now

  • Advertisement
  • Similar Content

    • By Jiraya
      For a 2D game, does using a float2 for position increases performance in any way?
      I know that in the end the vertex shader will have to return a float4 anyway, but does using a float2 decreases the amount of data that will have to be sent from the CPU to the GPU?
       
    • By ThunderTwonk
      Hello everyone, I am working on a game idea and since I am still in the process of learning C# and the features available in unity I was hoping some of you might be able to offer me a little insight on things in general for getting started.
      I guess the basic components of what I'm wanting to create would be a Multi-levels management/city builder/rpg.
      The goal is to provide a framework for players to interact with, build in and affect the world both from a 3rd person action RPG as well as a zoomed out 4x style view (This would be something unlocked through gameplay)
       
      As for my questions go I was wondering if anyone had resources that could help me learn.  I've been on youtube as well as enrolled in an online course for basic unity and C# and will continue those but if anyone has any words of advice, a place that has good information and tutorials etc.
       
      Thanks for your time.
    • By INFRA
      SCAN. DRILL. SURVIVE.   ISOLATED Release in May 1st 2018   https://store.steampowered.com/app/805950/Isolated/   A game by Jérémie Bertrand Music & Sound Design by Pierrick Querolle *** Our solar system has been invaded by strangers. For the purpose of a possible negotiation, a team of astronauts is sent to the moon. Alas, they are shot before even arriving on the scene. Only one astronaut survives the crash and his only goal will be to go home...   GAMEPLAY   Shoot enemy ships to avoid being invaded. Be precise in your movements, because it's better to lose a bit of life at the top than to lose it all at the bottom. Take out your drill to destroy the stones in your path. Validate your identity to cross the different laboratories. Reach the flag before losing your three lives.   And all that... at the same time! Will you be able to go home? If the answer is yes, how long will it take?
    • By Captain Jack
      Hi,
      Two questions: I am trying to rotate chroma in YUV colour space by separating each of the components and applying the following formula.
      int Ut = ((U-128) * cos(hue[H]) + (V-128) * sin(hue[H])) + 128; int Vt = ((V-128) * cos(hue[H]) - (U-128) * sin(hue[H])) + 128; ...where hue[H] is an array of rotation angles between 0.0 and 360.0.
      This seems to work OK but is dog slow. Is there a way to speed this up by converting to integer only calculation and doing away with cosine and sinus? 
      Second, when doing conversion between YUV and RGB, it seems that luma is also affected after rotation. To demonstrate what I mean, I am randomly rotating each line's chroma. The process is:
      Convert from RGB to YUV > rotate chroma > convert to RGB.

      Top left is the original image, the two images on the right are U and V and the bottom left is the luma. As you can see, it seems to have some artefacts from rotation. Is there a way to avoid this?
      Thanks
      CJ
    • By fleissi
      Hey guys!

      I'm new here and I recently started developing my own rendering engine. It's open source, based on OpenGL/DirectX and C++.
      The full source code is hosted on github:
      https://github.com/fleissna/flyEngine

      I would appreciate if people with experience in game development / engine desgin could take a look at my source code. I'm looking for honest, constructive criticism on how to improve the engine.
      I'm currently writing my master's thesis in computer science and in the recent year I've gone through all the basics about graphics programming, learned DirectX and OpenGL, read some articles on Nvidia GPU Gems, read books and integrated some of this stuff step by step into the engine.

      I know about the basics, but I feel like there is some missing link that I didn't get yet to merge all those little pieces together.

      Features I have so far:
      - Dynamic shader generation based on material properties
      - Dynamic sorting of meshes to be renderd based on shader and material
      - Rendering large amounts of static meshes
      - Hierarchical culling (detail + view frustum)
      - Limited support for dynamic (i.e. moving) meshes
      - Normal, Parallax and Relief Mapping implementations
      - Wind animations based on vertex displacement
      - A very basic integration of the Bullet physics engine
      - Procedural Grass generation
      - Some post processing effects (Depth of Field, Light Volumes, Screen Space Reflections, God Rays)
      - Caching mechanisms for textures, shaders, materials and meshes

      Features I would like to have:
      - Global illumination methods
      - Scalable physics
      - Occlusion culling
      - A nice procedural terrain generator
      - Scripting
      - Level Editing
      - Sound system
      - Optimization techniques

      Books I have so far:
      - Real-Time Rendering Third Edition
      - 3D Game Programming with DirectX 11
      - Vulkan Cookbook (not started yet)

      I hope you guys can take a look at my source code and if you're really motivated, feel free to contribute :-)
      There are some videos on youtube that demonstrate some of the features:
      Procedural grass on the GPU
      Procedural Terrain Engine
      Quadtree detail and view frustum culling

      The long term goal is to turn this into a commercial game engine. I'm aware that this is a very ambitious goal, but I'm sure it's possible if you work hard for it.

      Bye,

      Phil
  • Advertisement
  • Advertisement

First steps

Recommended Posts

Hi everyone,

This is my first post, after lurking for some time I finally signed up.

I was looking for some advice and thought that maybe I could ask here for some help, in how to approach game development, 2D in this case.

I'm a programmer, I have been programming for 2/3 years or so, and I'm fairly confident in some of my skills, I've worked with Java mostly, a bit of C#, and a bit of Python, mostly in my spare time or small projects for work.

My experience with game development is fairly short, I had a Unity course in college, it was very short and not too complex, and with my final project, in which I made an endless runner, using LibGDX, but this was mostly following a tutorial.

The thing is, now I want to start again with game development, and I'm not sure what would be the best way to approach it in the long term.

Since I'm a bit experienced with programming, and I want to learn and understand a bit of what I'm doing, I didn't want to go with a full engine, like Unity or Unreal, and in my ignorance, since the project I want to make is something like a Zelda clone(A Link to the past) or a Metroidvania, I kept going back to frameworks.

I know of LibGDX since is the one I worked before (but there's always the stigma against Java), Monogame, which is the one I heard the most for published games (but I'm not sure how it compares to LibGDX in terms of how much low-level things you have to do), Haxeflixel and Love2D, of these two I don't know how low level they are, or what tools they have.

I get that my idea is fairly simple, and most of these frameworks or engines will work, but since I want to learn in the long term, I'm not sure what to pick, I don't want it to be so drag-and-drop like let's say GameMaker, but I don't know how wises it would be to start with something so low-level-ish, since it could be frustrating, and my goal is to actually make games.

So I'd like to hear your opinion guys, and any other idea you may have, I'm not that knowledgeable in the topic so I'm all ears.
I hope I get my idea through, sorry if my English comes a bit rough.

Thanks everyone in advance, 

Share this post


Link to post
Share on other sites
Advertisement

look i know a little about what i have read...i havent done any degree just self taught but i have a problem of learning a little and getting frustrated and moving on,but thats my problem...i got pretty far with python and pygame but hit a brick wall due to my lack of understanding of OOP i then switched to java and learned a lot about oop but didnt really try anything with libgdx though i have read its very good....im now giving html,css and js a go as it fits more in my future plans,but all this aside i know that it comes down to this:

do you want to work in the gaming industry professionally or just as a hobbyist hoping you will make an indi hit?

if you want to work in the industry the two main choices are c++ or c# and unity

the latter is to use anything that works and gets you the result.

nice to meet you...hope we can chat again.

Share this post


Link to post
Share on other sites

With your experience and for 2D game development I would recommend checking out MonoGame. It's a C# framework that does well with 2D games but it's basic enough that you'll learn a lot about the development process when making one. If you start to get comfortable with C# enough to move into a more advanced application I would actually recommend moving to Unity at that point. Although Unity does take care of quite a bit of the work under the hood with C++, it is precisely that which will enable you to focus on the design and production of a game rather than the technical aspects of the engine. If it's the engine programming itself that interests you then I'd recommend learning C++ in depth as it is highly optimized and all the low-level graphical APIs are written in it.

Share this post


Link to post
Share on other sites

In an early mathematics course you likely learned that the shortest path between two points is a straight line.  The hardest thing to do as a self-motivated programmer is to get from point a to point b.  If I was you I would find the tool that you believe gives you the simplest path toward completing your game.  Don't worry about the learning experience.  You will learn plenty along the way no matter which path you take.  It will be enough your first time through to learn your own strengths and weaknesses as a developer.   

To make a long story short forget about the stigma around Java if you already know the language and you are proficient use it.  If you are comfortable with C# and feel it has a better set of tools then use em.  Either path you take you will hit roadblocks and overcome them.  The lessons  you learn about general game development will likely be more valuable than any language or library specific lessons.  The lessons you learn about project management and general problem solving  will likely be even more valuable than those.   So don't sweat the language and library so much.

Have fun and be successful!

Bullet_Proof

Share this post


Link to post
Share on other sites

Thanks everyone for the help!

On 28/11/2017 at 12:26 AM, Warren Brandt said:

look i know a little about what i have read...i havent done any degree just self taught but i have a problem of learning a little and getting frustrated and moving on,but thats my problem...i got pretty far with python and pygame but hit a brick wall due to my lack of understanding of OOP i then switched to java and learned a lot about oop but didnt really try anything with libgdx though i have read its very good....im now giving html,css and js a go as it fits more in my future plans,but all this aside i know that it comes down to this:

do you want to work in the gaming industry professionally or just as a hobbyist hoping you will make an indi hit?

if you want to work in the industry the two main choices are c++ or c# and unity

the latter is to use anything that works and gets you the result.

nice to meet you...hope we can chat again.

I would say that working in the gaming industry is more of a dream haha, for the time being, I'd like to start from something and make a game because I enjoy it.

I don't know C++, I guess I'd have to learn it at some point, I guess for the time being C# sounds good.

Thanks for the help! Nice to meet you too.

 

On 28/11/2017 at 12:48 AM, cjmarsh said:

With your experience and for 2D game development I would recommend checking out MonoGame. It's a C# framework that does well with 2D games but it's basic enough that you'll learn a lot about the development process when making one. If you start to get comfortable with C# enough to move into a more advanced application I would actually recommend moving to Unity at that point. Although Unity does take care of quite a bit of the work under the hood with C++, it is precisely that which will enable you to focus on the design and production of a game rather than the technical aspects of the engine. If it's the engine programming itself that interests you then I'd recommend learning C++ in depth as it is highly optimized and all the low-level graphical APIs are written in it.

 

I've seen Monogame, I was kinda afraid of not knowing how low-levelish it was, and if maybe in my inexperience it would be too much for me, but I guess I am going to give it a try!

I would like to work with Unity or Unreal with some bigger projects, but eventually haha.

Thanks for the suggestions!

 

On 28/11/2017 at 3:21 AM, Lucas_Cage said:

In an early mathematics course you likely learned that the shortest path between two points is a straight line.  The hardest thing to do as a self-motivated programmer is to get from point a to point b.  If I was you I would find the tool that you believe gives you the simplest path toward completing your game.  Don't worry about the learning experience.  You will learn plenty along the way no matter which path you take.  It will be enough your first time through to learn your own strengths and weaknesses as a developer.   

To make a long story short forget about the stigma around Java if you already know the language and you are proficient use it.  If you are comfortable with C# and feel it has a better set of tools then use em.  Either path you take you will hit roadblocks and overcome them.  The lessons  you learn about general game development will likely be more valuable than any language or library specific lessons.  The lessons you learn about project management and general problem solving  will likely be even more valuable than those.   So don't sweat the language and library so much.

Have fun and be successful!

Bullet_Proof

That's a great advice, you are right, I guess is always the fear of doing things wrong, and trying to make everything perfect from the get-go, but it's right, the best thing would be to just start.

Thanks a lot, as a beginner, it's great to hear from others.

 

Share this post


Link to post
Share on other sites

Well as far as I have read in the two books that I have bought (C++ and C#) I made my decision based on this simple question:

Do you want the most people possible to be able to play your game?

If your answer is yes, then you may want to learn C++ and at least understand it.

As far as I have read in the two books I bought I realized something. I fit into a category of gamers who have no money. So we have what ever it is that we do have. Which means we don't have a lot of "memory."

So because I do not have a computer that is able to run all of the latest games like Watch Dogs 1, or PUBG, I wanted to learn how to make games that would allow everyone to play it. Sacrificing in return those awesome graphics for more of a gameplay angle.

Which to me it sounds like you love 2D which is awesome btw!

But my suggestion still stands. learn both languages for when something crashes. I am by no means an expert. if anything you have way more experience than I do in coding, but I do not know how far you are in graphic design, music, and story telling.

That is my perspective on it at least.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Advertisement