Nomi Matisic

Your local programmer

  • Blog
  • About
  • Contact
post6header.PNG

Update on my life and the engine!

May 03, 2021 by Nomi Matisic in BitEngine Update, General Life Update

Hello again!

Because of last week’s incident, I have a normal amount of stuff to update you on!

General Life Update:

Let’s start with the general life update!

I’m still a bit sick. Not that sick that I need to stay home or anything like that. I did a corona test just to make sure and I’m still negative on that so I’m not dying or anything I just have a soar throat.

I’m surprised about my Jeffry (my plant). He has been surviving amazingly. I might not be a great plant owner but I’m impressed with how good he is surviving.

On the other hand, socializing has been a bit difficult due to me being “sick” but I hope that I get better so that I can go back to normal and try to socialize a bit XD

And work-related stuff is going, I guess. There hasn’t been that much to do at work for the past couple of days but soon everything will go to shit and ill probably have to work extra hours just to make everything work.

BitEngine update:

So BitEngine related there is not that much to show you this week. There has been a lot of backend work just to make mouse picking working. But I can share some things that I have done!

First of I started by refactoring the framebuffer...Again. I had to refactor it so that I could add some information to every pixel. I need this because I need to store the Entity Id somewhere easily accessible to do mouse picking. But now I have a way to store an integer as an id in every pixel. At the time of implementing this, I had no way to add anything to that integer but I just made a placeholder and moved on.

Next on the agenda was making it so that the return value when hovering on the clear background not spit out a random value depending on what color the background was. So I did some refactoring of the clearing the frame. That did not take that long to do and there were not that many complications when doing it. Altho I needed to add some functions to convert my format to OpenGL’s format just to make it more modular and functional. There is still some stuff that I need to add but that will have to do for now.

Now on to the big task of implementing mouse picking so that I don’t have to select entities from the hierarchy panel. I started by adding some code to the shader to make it compatible to take in an entityID. After that, I needed to refactor the DrawQuad command to make it able to send my EntityID to the shader for rendering. But I noticed some stuff that could use some refactoring to make the code base a lot smaller and more compact. But after some small deletions, I added the one row I needed to send the EntityID to the shader. That is what I like to see, code that has been through true in the beginning to make it easy to add stuff. I’m still going thru code that I need to change to make these kinds of additions but it is going along slowly due to me wanting to implement more new stuff to bring to this blog.

But after some tweaking and adding I have finally added mouse picking for the viewport. And I can’t say anything more. I’m impressed by myself!

Image from Gyazo


I’ll just have to end this with. I have had a tough week. Not from work or from my normal life. Just from being sick. I lost a lot of motivation to do anything and I have had lower energy levels to just stay awake for one day. But I’m doing everything to get better sooner. I just hope that this doesn’t stick for too long.

But I thank you for reading thru this blog post today again and I hope to see you in next week’s post!


May 03, 2021 /Nomi Matisic
BitEngine Update, General Life Update
Comment
post5header.PNG

This is a slow moving train

April 19, 2021 by Nomi Matisic in BitEngine Update, General Life Update, GameDev Update

It has been a week now and ill have to update you even tho there might not be that much that I can update you on.

But let’s just jump right into it!

General life Update:

It has been a difficult week for me. Work has been extremely demanding and I had to do a 24h shift. But in the end, it was worth it. I am now allowed to drive vehicles in the Swedish armed forces. But I’m not done yet I have a lot of things to develop and improve on and I still have some “addon” courses to complete.

I don’t like it but I have to say it my plant almost died on me. I forgot to water it for a few days and it started dying. But I managed to save it and I can now say that it is healthy and recovering grat. 

I have also started to try and socialize to get over that hurdle, but it is a slow-moving train. But I think I can do it, and hopefully the restrictions lighten up so that it becomes easier to visit people.

BitEngine Update:

So the updates in BitEngine are almost nonexistent. There are a few backend cleanups and a few things that are easy to show. But due to work holding me for long hours a day and me having other stuff to fix at home, I haven’t had time to sit down that much this week. But ill give you the details of the things that I actually had time to fix.

Image from Gyazo

The first thing that I managed to add this week was gizmos. I used ImGuizmo to accomplish this. ImGuizmo is sort of an addon for ImGui with is nice. It was super easy to implement and after just a few hours I had gizmos up and running so now if u select something in the hierarchy a gizmo shoes up on the origin of that entity. And because it is a gizmo u can move it around and rotate the entity and all those fancy stuff.

But I ran into a problem with it. When I removed the camera entity from the scene everything crashes. So the next thing I decided to do was to fix that. And the most logical thing to do (that I should have done a long time ago) is to add an editor camera for the editor, that can’t be removed and not show up when Runtime stuff is running. But for this, I need to add a lot of future things to do in to my Trello board, but I think ill manage. 

Image from Gyazo

But after a few hours of crunching on this problem, I came up with a solution to add an editor camera, and currently it is using Maya’s control scheme for moving around but ill have to test it a bit more to see if I like it. But so far it feels good.

But after I added the editor camera I felt like I should clean up some code and make it a bit more pretty than it is. So I sat down and just looked thru the code and fixed some small stuff.

But the big thing I did this week was that I refactored the frame buffer code and made it so that it supports multi render targets. This is useful for the future like next week or in two weeks when I sit down and start writing mouse picking possible so that I don’t have to select entities from the hierarchy but by clicking on the entity from the viewport.

GameDev Update:

I have decided to add this category because I have started to think about the game that I have talked about is and how maybe I should structure it. But I don’t what to hype anything up so I’m not going to say too much but I think it will be some sort of like to the moon game ish, and I think more 2D the 2.5D, and of course it will be story-based. I haven’t really started with the story writing but I think I will start with it next week sometime.

But yeah it has been a pretty slow week regarding the development of BitEngine but a stressful week regarding my life.

But I have to thank you for reading thru this week’s post and ill hope to see you in next week’s post. Have a great coming week!

April 19, 2021 /Nomi Matisic
BitEngine Update, General Life Update, GameDev Update
Comment
post3header.jpg

A little work and a lot of life

April 05, 2021 by Nomi Matisic in BitEngine Update, General Life Update

Hello again! This week has been relatively uneventful; But there is still a lot to talk about; so let just get right into it; Also just as a precaution, I am currently writing this on my old laptop because I’m out of town visiting my parents for easter; 

Life update:

I got sent to a course by my work; it involves getting a C driver’s license aka im soon allowed to drive big trucks; And there is nothing more about it. I am just happy that I’m finally am getting a military driver license after two years in service; And as I said at the beginning, I am currently out of town visiting my family over easter; which is nice but I’m hoping on meeting some old friends as well to work on my social skills but we will see about that; other than that life has been pretty straight forward, wake up, go to work, go home and sleep, so my days haven’t been that exciting, but they are moving forward; before I know it summer will come and I will need to take a vacation but I already know what I will do then, programing and living haha;

I am worried about my computer, for the past couple of days it has been making weird sounds and I hope that it is nothing critical; Currently the diagnosis is that it is just a fan that has gone bad but I will just have to check when I’m home again;

BitEngine update:

BitEngine development has been slow this week; I had a hard time finding motivation and time just to sit down and program but I still got in a few features; 

First of, I have started to implement an ECS; I ended up using entt for the moment; I decided to use entt because currently, I don’t have time to code or test my own ECS; So I want to have something for now and maybe and just maybe in the future; I can make my own ECS, but ill just have to say implementing entt was so easy and so enjoyable to do, I’m almost having doubts that I what to make my own ECS haha XD; 

Furthermore, I spent a day or two implementing entt, and after that I needed some components to implement so that the ECS isn’t just an unnecessary feature that I wanted in the engine; so I spent a few days implementing a camera component, transform component, and a sprite renderer component; the camera component needs some work because I didn’t really future proof my camera class from the beginning, and so I had to spend smoke time rewriting and editing that so I didn’t have to ducktape something together; And the other components weren’t that hard; When I wrote those elements I already had a mindset to futureproof everything so implementing those into components didn’t take that long;

And so I put the ECS behind me and move on to new stuff and step on to the world of adding a scripting component, and o god, this is a journey ill probably have to visit again; there are so many ways of implementing this; not mentioning scripting in another programming language;

But I started to implement this Nativ scripting feature; I called it that because I’m planning on adding support to add scripts in C#; but this native scripting is just for c++ and having almost the whole engine at your fingertips; It is a bit more robust, and all that stuff and I don’t want to spend this week on adding support for C# just to realize that I need to add more things in the future because I have modified the engine so much; but yeah, I implemented the native scripting and it is currently in a fundamental form;

post3header.jpg

The last thing I added before I went out of town was a hierarchy panel to have some sort of visualization on what entities is in the current scene, and I have some plans to make the property panel next; And all of this is just to make the editor more useful then it currently is; I want to move my self from hard coding stuff in visual studio and start to make some progress on the editor to make my workflow a bit faster for when I decide to actually start making a games in the engine;

But now this week has come to an end and I just want to say thank you for reading this and for coming back from last week; And I hope you will come back next week;

I hope you had a great easter and I will leave you here;


April 05, 2021 /Nomi Matisic
BitEngine Update, General Life Update
Comment
Skärmklipp.PNG

Im back in buissness

March 22, 2021 by Nomi Matisic in BitEngine Update, General Life Update

So recently I have been absent from…life I guess. I have had my hands full from work and personal stuff so I haven’t really had time to fix my website/blog, nor have I had time to code or write to this blog. So this is going to be a fresh restart for me.

I will try to write to this blog once every other day or once every week to keep some sort of record of what I am doing and not doing.


General Life Update:

So from the top then, I can start with some general life updates on myself. I have now been working for the Swedish army for about 1,5 years in total, I still love it and I whould’t trade it in for any other job;

My social life is currently on the downfall tho; Due to covid I haven’t really had the opportunity to go out and meet up with a lot of friends, family and close once but I hope that I can get the vaccine to change that soon;

More to the other side of life, I am a mess and I need to change my habits of cleaning my apartment for once XD

Some of my new year’s resolutions:

  • Sort out my economy (so that I might be able to buy a house or buy my own apartment)

  • Work hard and code more than last year

  • Get better at cleaning

  • Spend more time with close once

Altho my list is quite small, it is reasonable for my standard; work usually takes up most of my living time and can be quite stressful;

Recently I have been working on my cooking skill; They are far from perfect, but I am working on them;

My spending habits haven’t really changed, altho I don’t have a lot of money from the beginning; As fast as I get some, it usually disappears on rent and basic needs stuff;

received_1396639737200321.jpg

I also now have a plant named Jeffry; He is the best plant and i hope that i can take care of him; But only the future will tell how he survives


BitEngine Update:

So some BitEngine Updates; A general orientation on what BitEngine is, it is suppose to be a small “in house” rendering engine for my use to make some small-time games or other stuff; At the moment it cant really render anything other than standard ImGui stuff; Currently it supports OpenGL rendering if I could call it that; But i’m planning on adding support of other rendering apis like Vulkan;

The current goal for it is to make a story game; I don’t want to go into details about what the game is suppose to be because that would spoil it ;) But that is the general idea on what i’m going to use it directly after I fell like I can use it for something; I will of course still work on it and make it better and keep it updated for future use;

Back to what I currently need to do with it; The first thing I need to do is to figure out what I last did on it, and that might take some time because 26 000+ lines of code are quite a lot for one person to process;

But after that, I need to start working on some sort of better rendering for it; The current way of rendering is just to dump information and render it immediately; Witch takes a lot of resources to do, and there are a lot of better way to render stuff on the screen without doing a million render calls; I’m currently thinking that batch rendering might be a good option;

After that I might need some way of rendering text and/or texture; <- side note, textures might actually be a thing that I have already implemented but because I haven’t checked the codebase in a while i’m not sure;

I know that I have implemented some sort of shader support for it; I don’t know how good it is, but i know that it exists;

So yeah, that is the current plan at least; I have to start small and work my self up, so I don’t get to much work on my shoulders; If you want to know more about what i’m currently working on, I will leave a Trello link here so that you can check on the progress;


So in conclusion, it feels great to be back to the blog life, and I look forward to the future and to be looking back at this to see what I have done and how my life has been; of course, thank you for reading this and leave a comment or two if u have any question; I will try to answer them as fast as possible or if I feel like I need to answer them in more detail I will answer them in the next post;

Have a great future, and be on the lookout for when the next post get out :)

Dont give up, life may be dificult right now but there is always green grass on the other side of the hill. Hold out and stay safe.

March 22, 2021 /Nomi Matisic
BitEngine Update, General Life Update
Comment
  • Newer
  • Older