Contributor If only I found out about Terasology years ago

Who

New Member
Contributor
  • Name: Amrit 'Who'
  • From: Trinidad and Tobago
  • Skills / Tools: B.Sc. Computer Science, a bit of experience 3dsmax modelling and Sketchup, worked on a Unity3D project(NavigationSystem).
  • Found via: Google while searching for games like Minecraft
  • Interests: I have experience with programming, 3D modelling, textures so I will try to work on any parts of Terasology that interests me.
  • Extra:Terasology looks like it has real potential due to the fact that it is open source. It really sucks that I have been home for about 2 years and did not know about Terasology and now that I found it, I have to go to work soon. In the last couple days I have spent over 12 hours learning about GitHub, shaders and trying to figure out the overall structure of Terasology. I have already made changes to the tree leaves block and texture and fixed the DOF effect to work much better. I still want to separate the DOF shading from the underwater shading and tweak the DOF to work better with translucent blocks(esp. the grass). I basically started working on some of the visuals that were annoying to me ;)
    Now that I have made these changes, I am trying to figure out how to get these changes reviewed/added. I really hope I get the time to continue learning and contributing to this project.
Screenshot of the changes to the trees.


Screenshot of the new DOF effect. The previous effect wasn't really DOF since the foreground wouldn't blur when looking at something far away.
 

Attachments

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Hi @Who - awesome work! We badly need some effort in that area, your help would be hugely appreciated, even if just done in the bits of time between work and sleep, many of us are familiar with that :)

Love seeing the sun peek through the leaves again, we had that once upon a time but it was problematic for some performance reason. This version works well and doesn't impact FPS too much? And yep, DOF has been on the naughty list for a while, example: https://github.com/MovingBlocks/Terasology/issues/672

To get fully set up to where you can submit code be sure to fork the project on GitHub, so you have your own playground. I am guessing you either cloned the root project or downloaded a source zip as I don't see any very recent forks. Reclone from your fork or simply add it as another remote reference: "git remote add who https://github.com/Who/Terasology.git" if "Who" is your GitHub user

Then you can commit your changes, push them to your fork on GitHub, and submit a Pull Request (PR) from your fork to our root repo. We'll pull the code to test, comment if there are any issues, then merge it when all set :)

You might want to run Checkstyle before committing to see if your code matches our style conventions too. Nice little step that helps keep stuff neat.

Welcome! Do let us know if you have any more questions, I am very much looking forward to seeing (and merging) that code! :D
 

Who

New Member
Contributor
@Cervator The leaves were real easy to do since I just had to change the texture a bit and modify the leaf block template file. If there was a performance hit, it wasn't noticeable but I will test it properly before and after to be sure. The DOF snapping and grass/translucent block triggering issue was what I was initially trying to fix but since I'm just starting to learn how shaders and Terasology works, I couldn't figure out how to get and use the game time to do a gradual blur adjustment. While trying to figure things out, I realized that the DOF wasn't really DOF so I worked on that instead and now the snapping is much less noticeable and the DOF works much better than before even though the code still needs some work. Surprisingly though, I was playing some Borderland 2 yesterday and I noticed that the DOF snaps in that game but of course that doesn't make it acceptable to me ;)
Since I never worked on a team project like this, where a VCS like GitHub is required, you have no idea how funny words like "Reclone from your fork..." seemed a while ago lol. I remember cloning to desktop though and then linking the GitHub program to the local clone...I think :p. Now if I fork it and then clone from that fork to the same directory that I'm working on right now, I am guessing that will overwrite my changes?
I am currently trying to figure out the where and how of Checkstyle while I was adding comments to the code. Once I figure out everything I will try doing a PR so you can see how much better the DOF and trees looks now. :D Any tips on benchmarking and viewing performance stats while in game, would be greatly appreciated.

edit: I just checked the fps before and after applying the new tree leaves and it was exactly the same but I don't know how to view the detailed stats like those shown in your post here https://github.com/MovingBlocks/Terasology/issues/1027
 
Last edited:

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
For in-game debug stats use F3 then you can cycle through some specific monitor sets with F4 :)

And yep, it can take a little while to get used to GitHub. We have a setup help page you can check to begin with, then follow-up questions are great. You can also hop on #terasology on Freenode IRC, the chat tab on this site will give you a web way to get there. There are a bunch of people idling there, ask away and hang around for a while in case nobody notices right away. Usually European evenings are the most active.

You indeed do not want to reclone to an existing directory, in fact I think Git will refuse to do so unless it can make a shiny new empty directory :)

You can either do so in a new place and just copy paste over your changes, or bring up a command prompt, cd to your existing project dir, then do the "git remote" command I put above. Usually you'll want a workspace where you have two remotes, your fork (usually named "origin" which is what Git clone will start you with - unless you cloned the root repo, then it is "origin") and the root repo (usually named "upstream" or "movingblocks"

If you use one of the GitHub clients that can help make it easier, but I'm less familiar with it so I couldn't advise more exactly without trying it myself first sometime :geek:

We also have a doc page on Checkstyle: https://github.com/MovingBlocks/Terasology/wiki/Checkstyle
 

Who

New Member
Contributor
Thanks but my new job has me leaving home at 630am and reaching back at 630pm so I don't know how much time I will have to continue contributing :( I am trying to learn whenever I get time but progress will be much slower now.
 
Last edited:

Esereja

Active Member
Contributor
That is very long hours, in what you work in? I hope they pay well for those all hours. Anyway good luck whit your work and burden yourself too much whit us. Burnout would be bad. ave nice Christmass time
 

Who

New Member
Contributor
Well work hours is actually from 8 to 5 but the rest is spent in traffic to and from work. I am an engineer working on the charging system for a cellular network and it pays relatively well compared to other jobs in IT in my country but nothing near to what I would get abroad. Happy holidays to you as well.
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
@Who - we're in it for the long haul. There have been contributors who have gone into "hibernation" for more than a year then come back to active development after their daily routine changed. No worries at all if you're busy for a while - just keep in touch, comment on some stuff in the forum occasionally, say hi on IRC, test a release, etc! And enjoy your holidays and time off first, then play around with stuff second if availability shows up :)
 
Top