Making a game with RED Engine - A Cross Platform Game Engine

About me:
I am an 18 (19 in a month) year old programmer living in Germany, Fluent in Java, I have been programming for approximately two years now. My first ever game that I made from scratch is on this website (Vera), It was a voxel game that I made using LWJGL, But also
my first game, I learned so much about programming when I made it as when I started working on it I have only been programming for around 2 months.
After I made the game I was very happy with myself and eventually stopped programming and went in a different direction. But last year I was watching Pewdiepie, And watched his old gameplay of The last of us for the first time. I was so inspired, The game, the story, The environment, Was so beautiful. I found it very inspiring, So that gave me a push back into programming, So I set a goal for myself to build a game engine. Something I can use to create games whenever I want without the hassle of paying royalty fees, and of course, the bragging rights :wink:
I had to learn how to make my own models in blender as I really couldn’t get any help online.
I still can’t make any great looking models though for the life of me…

The engine:
The engine is a cross-platform engine created with Java using the OpenGL API, The engine is made with a variety of built in tools to make the game creation process easier and less time consuming.
The engine launches in only one window, The game window. And from within the level editor tools are integrated inside the engine, And can be used
to create levels however big the level designer desires.
The engine currently has these features built in:

  • Normal mapping
  • Displacement mapping
  • Specular lighting
  • Custom lightweight animation files
  • Custom lightweight object loading files
  • Bloom
  • Shadows
  • Anti Aliasing
  • Built in 3D particle system
  • Volumetric Light shafts (using lit particles / post processing effect)
  • Built in vegetation engine
  • Built in terrain engine
  • Built in physics engine
  • Custom shaders
  • Custom scripting language
  • Custom Java to script converter

The engine is very easy to use, And it uses a custom data format to save/load levels which is very lightweight and fast. But it also makes it very easy to mod games/levels without using third party tools.
Current supported platforms: Windows, Mac, And Linux.
Currently there is no OpenGL ES support, But I will be adding it in the future.

The base rendering engine took me 2 months to build, But with time I started adding more features, The total time spent on the engine (excluding breaks) is about 7 months (at May - 2016).
Pictures and Videos:

yNjHxzMWNNM

ck8ZETgYTcc

http://euphoricgamer.eu/Capture 1.png

More coming soon…

Alright so this post is going to be a journal of my game that I’m creating with the engine.

[quote] But when I came to this website and talked about creating a game lot of people tried to put me down, Telling me its a bad idea to recreate the process and just gave me unjustified hate overall.
[/quote]
I think you misunderstood their comments. It wasn’t “unjustified hate” but rather trying to help you out. They were suggesting that rather than try to make an engine that, frankly, few people would use (because there are so many engines out there that have everything that yours would offer (jMonkeyEngine and LibGDX just to name a few)) and that you should focus on making a game.

[quote]I guess people can’t be happy for someone who might want to do something good with his life… Anyway maybe some people are just bitter.
[/quote]
Are you suggesting that people on this forum aren’t doing good things with their life? Many people on this forum have been programming for as long as you have been alive and they were simply passing on their wisdom. If you don’t want to take it, that’s fine, just at least take the time to understand why they are giving that advice.

@CopyableCougar4
That’s not what I meant, I did not mean it that way. I meant that there are people who like to stomp on peoples ideas.

I wasn’t making a commercial engine, I’m not giving this to anyone else. I made it so that I can make my own games, The whole feud was that when I came here originally I asked for a graphics designer to team up with me, Someone to help me make assets for my game. But people started “giving their advice” which just sounded like hate to be honest. The thing is, I know what I want, And what I’m capable of, And I did not need a commercially available engine. People shouldn’t be making assumptions and thats pretty much it. But anyway I did not mean to come off as rude as that’s not what I meant.

Hey

Congrats on the engine! I would say, don’t give up and keep going. There are people on this forum who are purely interested in making games and there are those that like the to be involved in the whole journey. The first group are less interested in creating tools and would just like to program content and the second group like to build their own tools to then go on and create content. People will offer advice from both categories so don’t be put off if people recommend going in a different direction to what you want to do.

There maybe many game engines out there and you maybe the only person using your engine but don’t let that stop you.

Nice game engine! Just to let you know, if you want to add a lens flare effect, you can convert the sun’s world co-ordinates to screen co-ordinates, then you calculate the corner which the sun is in. Once you’ve done that, you can draw the flares in the opposite corner.

Thanks! And yea it’s pretty simple :slight_smile:

Well, I’m supporting you. I’ve followed a similar path as you first develop little games then a library to build my games (see MarteEngine here).
I think in order to get work done, you have to decide what kind of framework you are developing, what kind of audience and so on. For example for me my idea was support developer for small 2d games, with no advanced features. In your case, make a 3d engine is really hard!

Btw I don’t think anyone in JGO have “hate” or “put you down”. We are programmers, designers, hobbyist and because I’m older than you (I’m 34! :frowning: ) I know more times goes on, less times you have for program a library to support others. So why don’t focus on make games ? I think this is the point!

That’s very impressive. 2 months to do that? Gosh, I think I could not even manage figuring out how 3d works in 2 months :slight_smile: (I might be exaggerating a wee bit here, although I don’t know anything yet about 3d programming, but I sincerely think it’s really impressive given the time you had)

Update! I’ve been working really hard to create a good demo for a Kickstarter soon, So here are some pictures of the level at 1440p.
Took me quite some time to make and or find good enough models and textures.

And a little video of a head bust.
euphoricgamer.eu/bust%20demo.mp4

On your leaves shader, you need to up the required amount of alpha it needs before it’s not visible.

I’m assuming you did something like…

vec4 colors = texture(uniform_texture, pass_texcoords);

if(colors.a == 0)
discard;

Yeah this picture indeed shows that a little gradient between alpha #00 and #FF would be nicer :slight_smile:

Usually it’s something like this with the leaves:

if(color.w < 0.5) discard;

Leaves are sometimes gradient too. Although, that is a good method. Also, nitpicking, it’s colors use .a :point: :stuck_out_tongue:

Added two new demos to youtube!

ck8ZETgYTcc

-75Dv1oHyBI