Thursday, June 23, 2016


New blog

Hello everyone. This blog is officially dead. I have moved to a new site which can be found at http://www.lukahorvat.com. Thanks for visiting.

Thursday, August 1, 2013

Summer time

It looks like that a few months have passed since the last post, so I'd say that I could update the blog with some current information.

Summer work

As I said two posts back, I got a job offer in Ireland. I decided to take the job, since it's a real difference from previous summers and I can see how it is to work on some real software and not my projects. I have been living here for a month now and the job is nice. It's interesting stuff with something new every week; it keeps me working all the time, and gives me a sense that I actually do something useful instead of just sitting at home on my computer doing who knows what. All in all, it's great; but I won't write too much about it. I have a month too go and then I return home.

College

I haven't updated anything about this ether. I successfully finished my first year and start my second in October. I have to say that college absorbs most of your 'will power'; and kinda leaves you with no motivation to work on personal projects. But that's just how studying is, what can you do. This year I have to decide on course selection, it's ether 'enhanced reality' or 'intelligent agents'. I think I will go with the latter, since I prefer artificial intelligence and language interpretation. We will see how this year will go. All together I still have two more years till I finish.

Personal stuff

There are a few things that happened in the last months. First of all, the book that I was reviewing was published. I have no idea how it's selling and stuff like that, but it's not really in my interest. Let's just leave that topic.
A bigger thing I did was that I made my Udemy course paid again, 9$ this time. I kinda decided to give one last go on the paid course thing, and since I gathered over 5000 students while it was free I thought that maybe now it could go. And it works. It's not a lot of money, but it really helps a lot. I know some people don't like that it's paid, but I also have to get some income somewhere and it's the cheapest it can be on Udemy. I think that my Youtube subscribers got the course when it was free, so that shouldn't be a problem. Currently it will stay priced until the sales more or less stop.
Even though most of my time here is focused on the job, I was still playing around with some ideas. I'm planning on switching up most of the libraries I use for game development, and learning OpenGL 3 while doing so. I think that I will have to know it sometime, so why not now. It's quite hard moving from intermediate OpenGL 2 into the new pipeline, but I will manage it somehow. I'm also planning on discarding SDL, SDL_image and FTGL for more lightweight libraries like GLFW, SOIL and plain FreeType. It's a lot of work and I will see how it goes when I actually start working on that. This also means that I will kinda have to close up RedFramework. I was still planning on adding Box2D to it, but it seams that will have to wait for RedFramework 2.0, or whatever I will call it. It's quite a thing again and I don't know when I will start with it or when I will even be close to finishing, but it's kinda on top of my head now.

That's all folks, I hope this shed some information about my whereabouts. I will see when my next post will be, I could try posting more often with content that's not related to me, but I'll see. As you also noticed I changed the blog theme to something more simple, the dynamic template was slow to load and use, so this works much better. Bye.

Saturday, April 13, 2013

Squared Shooter source, and other

You probably haven't noticed, but I started to release the course code for some of my project on my GitHub. Take a look.

Squared Shooter

Probably one of my biggest projects; and if not biggest, then certainly the one that kinda exploded with the timelapse video. A game that I made the last week of August 2009, simple but fun, turned out to be something more for me personal. I wish I could again make games with the passion I made this one, but the times are changing.

I changed some small things with the code. I removed the music from it (licensing), SDL_mixer because it's not needed anymore, moved the data to a folder and added WASD support for movement. I don't know how the code looks, but it shouldn't be too bad. There is also separated axis collision implemented, so that may be interesting to look at. You will need SDL, SDL_image and OpenGL (Glu should already be included) to compile the project.

Check it out here.

Other project on GitHub

If you check my profile on GitHub, you will see that there is also the source for JAHP, Me and my shadow, Space Invader Versus, my new framework and others. Me and my shadow code is already used for further development by a team, the other are more or less there for me, and anyone curious. The Space Invader Versus code should probably be avoided, because it's filled with problems and memory leaks.

That's it for this post. Just wanted to make a post to keep the blog active and to inform you of my public code. The exams are now over for 2-3 weeks, so maybe I will find some time to work on the framework and maybe something more.

Saturday, April 6, 2013

Where am I?

This blog has been like a desert for quite some months now, and I think it's time that I finally post again about what I'm doing and where the hell I am.

College - the final frontier

Or whatever is the equivalent of visiting an university in your country.
I always knew that college isn't going to be easy and that it takes time and discipline to get through it. But somehow I'm still surprised at the amount of work I put into it. The main energy drain are not the exams, since I have them all in a 2 week time-span every month and a half; where I devote my time into learning. The main thing (at least for my choice of study) are the constant exercises that you have to complete in order to even take the exams. Every week you get some exercises to do at every class, and that adds up to a nice package that takes quite some time to complete, so it's best to so something everyday. And that leads to a state in my mind; where I simply don't have the will to do additional personal projects and rather relax playing games.

But let's stop here. I don't want to bash my college, since learning by exercises is by my opinion the best way to learn. And the classes cover a lot of different topics. Well except math is always math, always harder. I just wanted to point out that it doesn't go well with my personal projects, so I have to put many things aside in favor of college. And it will probably stay that way until ether things cool down or I change the way I think and work, and that's something I want to achieve.

Life and living

I don't want to write much about my personal life, so I will just make this short.
I quickly got used to living in a city and I really like it here. My roommates are also great, we understand each other nicely. The weather currently sucks, we haven't had a nice warm day for a few month now. It's just snow and rain. Everyone is waiting for the real spring. And I have had a cold for a week now. And that's  mainly it, life is good I guess.

Current project, plans and personal

Even though it's hard to find the time to do something concrete I still do a few things here and there. And there are some plans for this year.
Currently I'm a technical reviewer for a book about SDL game development. I go through the chapter and check if the code and terminology is correct. It is using SDL 2.0, where there are not many tutorials about it on the web, so the book will be an addition for those interested in this topic. I don't know when the book will be done, I just review it as it comes.

Subscriber amount on Udemy and YouTube is constantly rising. I'm happy that people find my tutorials useful, even though the planned 'make money with Udemy' failed nicely. I'm not planning on creating any new videos. I don't know what I should cover and I also don't want to go into more advanced things, since it's hard to teach, specially on YouTube where you have people from all knowledge levels.

I even found some time to work on the framework this week. I fixed and added some things. I was also shocked that FTGL (the library I use to render fonts) has memory leaks when using pixmap fonts; that just shouldn't happen with a framework like that. So I had to change to texture fonts, which work nice. The framework is now ready to integrate Box2D for physics handling, and then it will be more or less done. I don't want to complicate too much, I hate it when frameworks constrict people. I will try to work more on the project, but who knows when it will be done. 

I had a big idea at the start of the year, to try to make one simple game every month. But it just didn't work out. I have one small game in production, but I will probably abandon it, because I just can't find the graphics  appealing. I really suck at graphics. And thinking back to my complete projects, all of them had really simple and abstract graphics, but in the last year or so, all I tried was more 'pixel art' stuff. I think it's time to return to my roots with silly programmer rectangles and make something that is more fun mechanically and gameplay wise, but probably lacking in fancy arts department. 
(2x0ng, an interesting game I found here)

The last big thing I want to mention is that I got a job offer for summer in Ireland. I would live there for 2 months and work on a project. I won't tell anything about it, but it looks really interesting. I would really like to work on a real project with a team, so I could experience how it all works out in the real world. The time there would be dedicated to that project only. It would be a real change from the standard summer slacking or shitty jobs that have no relation to CS. I'm still haven't accepted the offer, since moving and living completely on my own where I wouldn't know anyone for 2 months is a really big change for me. But I think it's a thing that I should get used to. I still have to think about it, but the more I think about it, the better it seams to accept the offer.
And that's about it for this blog post. I haven't posted for quite some time, so it's quite long; but I felt it's necessary to tell the main things. I hope you enjoyed the post, and that you enjoy the new blog design. I know it takes a little longer to load, but hey, dynamic pages. Please, feel free to post any comments regarding the post, or any general questions. I will try to post more often, but you never know; I usually don't know what to write about.


Saturday, October 20, 2012

Many changes

Let's address some changes that have happened in the past month.

The move and school

I moved to the city at the end of September. And till now it’s been great.

School is also going good, we will see how it will be in the future. Mathematics is going to be hard despite the fact that I always enjoyed math. Well and that is basically is. I don’t really have anything to say on this topic.

Plans

It’s hard to stay focused on my projects right now, school is taking me quite some time. There are always some exercises that I have to do, or seminars, or just plain learning. When I don’t do stuff for school I do something more relaxing, like playing games, guitar or going out. I haven’t worked on the framework for ages. I have to get into the new rhythm. The framework in the main project now, games will come after that (I hope).

I am also thinking about some new side activities. I am thinking about making a new blog for ‘writing’. Stuff that isn’t connected with computing, game development and stuff. Just some random word ramble. I’ll see. I am also trying to get into pixel art. Everything depends on how much time I have.

I’m also in the process of organizing all my previous work. I already sorted all my previous school stuff, and now it’s time to sort my projects. I have to check the source of all projects, clean all the useless stuff that IDEs make that isn’t really required, etc. There are a lot of small projects that need cleaning.

And that’s it for now. I just wanted to post some information here. Bye

Friday, September 7, 2012

Some general new information

Hello again. This is just going to be a short post with some information and a new video.

Last two months

I actually tell this in the video already, but my blog is primary, so here it goes again.

For the last two months I have been doing completely nothing computer/programming based. July and August are a games only month for me on the computer, at least for the past few years. I am not proud of it, but my roots are still in the gaming community, and I enjoy every moment. Nothing else really to say here, so for fun I will just give you this summers game check list: completed Sleeping Dogs, lots of La-Mulana, got from zero to max level in Age of Empires Online, replayed all Half-Lives (except 1, waiting for Black Mesa) with the crazy achievements, lots of TF2 and Diablo 3, got to complete Beyond Good & Evil, and played a lot of other games like CoH, Dota2, L4D2, Mount & Blade, Deponia, + random stuff.

Also I’m always open for online play, so feel free to contact me for a game :)

Free course

As I said before, the course on Udemy will be free sometime in the future and I won’t talk about it until it does. And now it’s the time. If you wanted to take the course but didn’t want to pay for it then check it out here for free

Current plans

I’m currently working on a new framework. I’m combining all the lessons I learned from before to make a final framework that I can use to develop games. The “framework” uses SDL, SDL_Image, OpenGL, FTGL, Freetype2, irrKlang, Box2D and GLEW. I’m not planning to add networking (never did any networking) or a scripting language like LUA. It’s going to be modulated, so you will be able to select what you want to use, and still have decent features. I’m going to put it on GitHub when it’s ready.

So that is about it for this post. Here is the video where I talked about this really quick.

Bye for now.

Sunday, August 5, 2012

School Jumper

It’s time that I release this to the public.

schooljumper1

About the development

The game was made for my school’s final exam or finals. I had to create something that would show what I learned in the past 4 years in IT. So naturally I decided to make a game, because I love to make them.

I’m not sure how long it took me to develop the game, since I don’t track the time I spend on something anymore. But I will say about a month to two of passive development. Meaning I was on and off the project. The total lines of code is around 2000, but that’s just numbers, it doesn’t matter.

I lost interest in the development really fast with this one, because it wasn’t really something I wanted to make, I just had to make it and I wanted to make it really simple. So I just went for a simple platformer.

But the project has 2 things I never done before. First is a somewhat solid animation for the main character and the other is a much nicer level editor than any before. You still have to scroll through the objects but with a right click you get a menu, where you can nicely save, load and test the level. You still have to manually add the level in a text file if you want to use it in the main game, but I’m OK with that.

This is also the first time I used irrKlang. It’s a really solid sound library and I prefer it over FMOD for my needs. I’m not sure but maybe I also used FTGL for the first time, which is a font rendering library for OpenGL, which uses Freetype2.

jumper2

The game has two download options so choose yours:

Download 1 is an setup I made for easier use. You will need administrator rights to install it and it also comes with Visual C++ Redistributable which you need to run the game.

Download 2 in a standard zip file containing the game. No setup required. You will probably prefer this one.

Download 1

Download 2

 

The source code

I also GPL-ed the code and published it on GitHub. The assets are under Creative Commons BY-SA license. So if you want to modify the game go ahead and try it out. Or just use the code for some project.

GitHub page