Archive for category Computacao Grafica

Implementing a Render Queue for Games

Rendering a complex scenes is far from a straightforward task. In a world with Directx 11 multithreading, multicores CPUs, lots of multipass techniques, agressive culling, lots of GPU state transitions …. it is not simple to design a render that handles well all of those requirements. This article will show how to implement a simple strategy that tries to fulfill in a fashion way all of these needs. Leia o resto desse post »

, , ,

54.417 Comentários

BitField in Shaders (SM 3 and before)

Sometimes we need to encode lots of boolean flags in a texture channel and recover it in a shader. I found that shader model 3 and before dont have bitwise operations (they only support floats … that dont have this …) !!!
Fortunately i found some help on the old good float math and i managed to solve this even on SM 2.
Leia o resto desse post »

, , ,

44.553 Comentários

Triangle Rasterizer with Perspective Correction

Some years ago i implemented a full Software Render (learning purpose) using just regular C#.
Some days ago i was desperate trying to find a good Triangle rasterizer with perspective correction and then i remembered about the code i had written !
Leia o resto desse post »

,

36.221 Comentários

Gaussian Blur with Depth Preservation

This post will show a simple implementation of a gaussian blur effect with edge preservation.

Sometimes (like in fluid rendering) we need to perform a gaussian blur but we also need to still with edge preservation. The following code shows how to achieve this. Leia o resto desse post »

,

12.603 Comentários

Setting View Matrix For CubeMap Rendering

Recently, some guys asked me how to set the view matrix to create dynamic CubeMaps of a scene (and eventually use it for things like dynamic Reflection or PointLight Shadow Generation).
We did not have this on PloobsEngine, so i decided to implement and then tell how do i achieved that.
The idea is actually very very simple, you just need to point your camera to the 6 “cube” orientations and render the scene then store the result in the cubemap +P. The only trick is to associate each cube face with the right View Matrix. Leia o resto desse post »

17.831 Comentários

Opentk – Extracting Data from VBO with granularity

As the future of XNA is not so clear, i decided to invest a considerable time in the 3D port of  Monogame. I joined the group and started to contribute with some code. My goal is to run PloobsEngine completely on Mono Platform (Windows + Linux + Mac + IOs + Android).

In this post (and i hope in lots of more) i will put some parts of the code (some done by my, and lots done by others)  used in the project that could be usefull for everyone. Its is not going to a tutorial, it will be more a code snipped. Leia o resto desse post »

,

23.473 Comentários

Rendering Text on 3D with Windows Phone 7

This Short Post will show how to render 2D Text in a 3D World with XNA 4.0 (PC , Xbox 360 or Windows Phone 7).

The idea is pretty close to this one about classic 3D Billboards, so i wont wast your time explaining how things works.
Leia o resto desse post »

18.732 Comentários

3D Billboards On Windows Phone 7

Billboards are one of the most used “primitives” in rendering, principally in mobile environments where whe dont have GPU power avaliable to render millions of real triangles.

In this post i will show how to implement Cylindric and Spherical billboards using the simple XNA SpriteBatch.
Leia o resto desse post »

, ,

21.397 Comentários

A Bit about Projection Matrix Transformation

This little post will talk about how the W component of a vector4 is transformed in the Graphic Pipeline, starting from Model Space and ending in the Screen Space Coordinates.

Leia o resto desse post »

39.265 Comentários

Motion Blur on Windows Phone 7

Everytime we need to give the impression of Speed we go to Motion Blur. There are Loots of ways to implement this, the old classic idea is to use the “also old” Accumulation Buffer to create this effect, more modern approaches generates each frame a Velocity buffers and use it to distort the final image.

Leia o resto desse post »

8.460 Comentários