Jump to content

Programmer (Graphics, Gameplay, AI) - Mikita Hradovich (yet another (game) developer wants to participate)


Recommended Posts

Position: Programmer (Graphics, Gameplay, AI)

Do you understand that Wildfire Games is a non-commercial project, work for 0 A.D. is volunteer, and work is done for free?

Do you agree to distribute all your work for Wildfire Games under Creative Commons Attribution Share-Alike license?

Mikita Hradovich
nikagra (at) gmail (dot) com
Wrocław, Poland
~10h (it depends really)
Software Developer (Gigaset), Doctoral Study (Wrocław university of Technology)

Bachelor Thesis on 3d landscape generation and some procedural techniques

Skills and Experience:
4+ years of commercial programming experience, strong and deep interest in game development

I'm passionate gamer and my long-term goal is to become a game developer
I'd like to challenge myself and constantly learn new things

Short Essay:

I've learned about 0 a.d. when it appeared on indiegogo. A few days ago I've got an email from Wildfire Games and decided to finally try to take active role in 0 a.d. development.
This is a great opportunity to get gamedevelopment experience, to learn more about game engine architecture, to participate in real game and to meet passionate gamers and developers like me

Interests and Hobbies:
Computer science and programming, gaming and gamedev, sci fi (books, movies), astronomy

Favorite Game:
Witcher 3, Skyrim, Crusader Kings 2, Age of Empires 2, Cossacs, Assassin's Creed series, list goes on...

Work Examples:
C++ developer in Nokia Networks (2 years)

Edited by nikagra
  • Like 2
Link to comment
Share on other sites

Hey, first of all welcome to the forums.

Programmers don't really need to make an application, contribute enough and you'll be part of the team.

If you haven't read the wiki yet I'd suggest reading the programmers section http://trac.wildfiregames.com/

If you need any help to find a task just ask me, I have been lurking around trac a long time, and I know most

of the tickets. I saw you dropped by IRC, that's great, that's our #1 way of communication.

So hope to hear from you, and see bugfixing :)

Link to comment
Share on other sites

Hello Mikita and welcome!

As Stan already said, programmers usually just pick a task and submit one or more patches before they eventually get invited to join the team.

You may want to pick a simple task (link) or fix a bug to start with. If you are interested in a specific task, you may also work on that.

Is there anything you are particularly interested in (AI development, GUI programming, network code, rendering etc.)?

Link to comment
Share on other sites

If you are interested in rendering there are different things you could do.

You could make an antialiasing fragment shader for the game there is a todo about it in the code somewhere. Here is an attempt of niektb and I but it just happens to make the screen blurry.


Else here are some tickets you might be interested in

http://trac.wildfiregames.com/ticket/40 Weather

http://trac.wildfiregames.com/ticket/44 Terrain Special Effects

http://trac.wildfiregames.com/ticket/569 A bug with alphamaps in Crendererer

http://trac.wildfiregames.com/ticket/1116 A incorrect usage in the Terrain Renderer

http://trac.wildfiregames.com/ticket/919 Fix territory boundaries rendering

http://trac.wildfiregames.com/ticket/1368 Problem with selection ring

http://trac.wildfiregames.com/ticket/1229 Territory sometimes has holes

http://trac.wildfiregames.com/ticket/2506 Some issues with glsl

else Yves is working on an OpenGL4? port, so you could probably try to help him I guess.

https://github.com/Yves-G/0ad/tree/OGL4 see http://trac.wildfiregames.com/ticket/3054

If you need anything tell me, or drop by IRC :)

Edited by stanislas69
Link to comment
Share on other sites

fyi, (if AA is something you like) my shader was an (attempt to) implementation of FXAA as described here: http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf

But like Stan said, the shader did smooth everything rather than just the edges... :(

Anti-Aliasing is definitely something that 0 A.D. lacks though, so a good and performant shader is welcome.

Link to comment
Share on other sites

No that's something else stan.

Nikagra you may want to get in touch with Yves who is currently rewriting the renderer to use OpenGL 4+, if you run into such issues.

As far as understanding our current code goes, I think Yves, Philip (on IRC) and myself would be the most knowledeable.

Thanks for your interest!

  • Like 2
Link to comment
Share on other sites

You could make an antialiasing fragment shader for the game there is a todo about it in the code somewhere. Here is an attempt of niektb and I but it just happens to make the screen blurry.


I've made an attempt to reimplement FXAA. Implementation is basically very similar to yours and some other implementations available over Internet (e.g. at geeks3d.com)

Here picture to compare results:




I don't know if this results are any better then previous ones. FXAA can blur textures as it detects edges during post-processing stage and tries to smooth them all. From my perspective it still looks better than aliased.

Edited by nikagra
  • Like 2
Link to comment
Share on other sites

It seems SMAA implementation is available under liberal license (this is official repo from developers of this method)

It's performed in three passes (edge detection pass, blending weights pass and neighborhood blending pass) and uses a number of precomputed textures (this texture and scripts in Python are also available)

Here is another repository with demo of SMAA using OpenGL

As for execution times here is citation from the paper:

Performance metrics are measured on a NVIDIA GeForce GTX 470 using 1080p images. Typical execution times for our technique are of 1.02 ms for SMAA 1x, 1.32 ms for SMAA T2x, 2.04 ms for SMAA S2x and 2.34 ms for SMAA 4x.

I'm trying to integrate this shader into the game now

Edited by nikagra
  • Like 3
Link to comment
Share on other sites

I've faced some problems with GLSL preprocessor. First it doesn't allow #elif directive. This can be fixed if we stick to one SMAA quality. Another is that preprocessor returns error when it meet defines like this:


It reports '0' as unexpected token. There is nothing special with this define. Error is returned on each token after braces. Any ideas?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...