Profile cover photo
Profile photo
Hesham Wahba
146 followers -
Programmer and 3D graphics programming aficionado!
Programmer and 3D graphics programming aficionado!

146 followers
About
Hesham's posts

Post has attachment
Mac and Windows ibex Beta 26 with SBS video support. In addition to SBS video I fixed up the interlaced stereo video support from earlier. It is a bit dizzying watching stereo video in the Rift however, if anyone has any suggestions please let me know. Up close it isn’t too bad but it feels wrong watching these Rift SBS videos as-is. Please let me know of any issues.

http://hwahba.com/ibex
Photo

Post has attachment
Mac and Windows ibex VR Desktop Beta 25 (http://hwahba.com/ibex) with multi-monitor support. Surprisingly I found enough time to get this working. I used AirDisplay for the Mac to test it out. Hopefully the performance isn’t too bad. Also, unlike Windows you can use the Rift display as a second monitor as we can take screenshots below the Rift display. I’ve left beta 24 up in case there are any issues using this one. Please let me know if so.
Photo
Photo
2 Photos - View album

Ibex VR Desktop beta 23 is out with universal Mac architecture fixes, multiple video playing, webcam fix, http://hwahba.com/ibex #oculusrift

Post has attachment
ibex beta 22 (http://hwahba.com/ibex) fixes a few small things for Windows, mainly that you can now remain fullscreen if you switch windows or hit the Start menu. The other requirement for this to work though is that you extend your desktop not mirror it. The second minor change which affects Windows and Mac is that the OSD text is now no longer stretched so it looks slightly nicer and is easier to read.
Photo

Post has attachment
After lots of changes I finally managed to get almost all the features that were in the previous versions of ibex (http://hwahba.com/ibex) working in the new and improved renderer. The biggest change I wanted to add in addition to the below is the fact that you can now walk where you are looking. You can turn it off with the U key if you’ll be using a joystick or Razer Hydra to walk (in the future) and want to look around freely without influencing your body’s walking direction. You can also bring up the desktop facing you anywhere using \

First off video is working once more, and better than before it now uses the official VLC installed on your system for the build and getting plugins. Previously one had to do a local build which was a huge hassle, so this is a big win for packaging and stability as there are fewer tweaks that need to be made to update to the latest VLC version.

Secondly, the text renderer finally got some love. It no longer renders a screen that you can look around but instead tries to keep everything within your field of view. Only the video file selection requires scrolling but in the future I’ll add support for scrolling on all the screens to allow more information to fit in. It isn’t perfect, but it works.

Another nice tweak was the addition of a mini feedback screen that pops up and fades out whenever you make a change to a setting so you know what the button you hit does. It pops up for about 1.5 seconds then fades out.

Lastly, a few more tweaks that were requested and small fixes:
* Windows now using OpenGL 3.3+ and ibex should work on Windows XP once again
* Bring up desktop anywhere facing you at \
* Bring up menu anywhere with /
* Unlimited terrain
* Lock head-tracking to last position using L
* Lock walking to where looking or allow free-look U
* depth culling of trees loosened slightly so they don’t pop in and out of view
* help menu using H key
* movie playing is back, regular or stereo
PhotoPhotoPhoto
2013-12-28
3 Photos - View album

Post has attachment
Fixed up my lighting including with normal-mapping enabled. Lots of little bugs here and there. The other issue I had is that my normal map had transparency which I didn’t know how to deal with so I flattened it and replaced it with a light blue as most sources seem to have. The lighting matches what it looks like now without the normal map after fixing. Viewing things from the light’s perspective is very instructive and was wrong for the longest time. Also, the position of the light seems to have had a big effect, moving it out from near the center seems to have helped immensely. Performance on my MacbookAir is still a horrible issue though…
PhotoPhotoPhotoPhotoPhoto
2013-12-11
5 Photos - View album

Post has attachment
Relative big update again and beta 20 (http://hwahba.com/ibex).  Visually I still hate how simple everything looks compared to nicer 3D engines that are out there.  I still think the ultimate goal is to get ibex in a AAA engine, but till then I will keep playing with my own.  Lots to learn about.

First a relatively pretty picture showing off the new features: model loading of a tree that I scatter 500 of around the terrain, gamma correction, shadow mapping, normal (bump) mapping so that the ground isn't so smooth anymore, caustics under the water and reflection of the skybox in the water.

What I've done this time is added support for the following, though much needs cleaning up and fixing:

* Normal mapping: this is used on the terrain so that the textures are bump-mapped and not just flat.  It gives the grass and stone a bit more of a 3D look as the light bounces off of it.
* Model loading using Assimp (http://assimp.sourceforge.net) based on the tutorial (http://www.lighthouse3d.com/cg-topics/code-samples/importing-3d-models-with-assimp/) from Lighthouse3D on model loading using Assimp.  This is really cool because it opens up a whole world of 3DS and Collada files for loading.  For now I only load up a tree but in the future I'll see if I can't get more interesting things loaded up.  The model leading needs much more cleaning up but once it is done I can start adding collision detection, frustum culling so that we don't render more models than we need and Octree support both for culling, collision detection, and possibly for occlusion mapping.
* Fixed up the directional lighting and normal generating for the terrain.  Not 100% certain that it works but it looks decent for now.
* Shadow mapping was updated to include the trees.  I've also figured out an amusing bug in that if your light is very steep then the shadows will "bleed" through the hills to the other side.  I couldn't figure out why my shadows weren't just hitting the first surface.  I guess this makes sense and if I were shadowmapping the terrain it would probably work correctly.  It should be interesting dealing with lighting once we have buildings and indoors to deal with.  I also took an opportunity to ensure that ambient lighting truly is as dark as it gets, previously I was multiplying it by the shadow pass but that isn't quite right.
* Gamma correction: as mentioned in this article by Larry Gitz and Eugene d'Eon - The Importance of Being Linear (http://http.developer.nvidia.com/GPUGems3/gpugems3_ch24.html).  This basically corrects for the fact that our monitors and displays have a non-linear response to brightness and so we need to correct our results so that we don't end up with the middle of our range looking either too dark or too bright, but rather a smooth continuum as expected.  I had ro use GL_SRGB on the final framebuffer that was used for displaying to the screen to hopefully get the effect right.
Photo

Post has attachment
Mac ibex beta 19 (http://hwahba.com/ibex) includes much improved water reflection, caustics under the water (you can't swim yet but you can see them), a "low quality" mode using Fn+Shift+F2 to speed up rendering, running with the shift key, jumping with the spacebar, and the ability to bring up your display anywhere in the world with the backslash (\) key.  Get it today and let me know how it goes :)
Photo
Photo
2013-12-01
2 Photos - View album

Post has attachment
Water shader using Perlin noise for Ibex. Simple terrain loader as well. It's ugly now but with a bit of work I'm sure it will be pretty very soon!
Photo
Wait while more posts are being loaded