Blogs

Cool Simulations

I ran across these simulations when I was searching for something to do for lab 5 and I thought they were really cool.
There are two simulations. The first simulation has to do with fire and how it burns. You can build a wooden structure and light it on fire to see how it burns. You can also add wind or stone to see how they effect the burning process. The second simulation has to do with water and oil. You can also add wind and foam to this simulation to see how it effects the motion of the mater and how the oil and water mix. I think both of these simulations were done in processing. I thought they were interesting because they show a cool graphic simulation of elements mixing with each other and how they affect each others movements.

Fire Simulation:
http://www.escapemotions.com/experiments/fluid_fire_3/

Water Simulation:
http://www.escapemotions.com/experiments/fluid_water_2/index.html

There are also other cool applets like flame painter and fluid painter.
http://www.escapemotions.com/experiments/flame/index.html#top
http://www.escapemotions.com/experiments/fluid_painter/index.html

Complex Mathematics with Computer Graphics

Algebraic Topology, a field of mathematics known very well to mathematicians, but not to Computer Scientists, has hidden applications to Computer Science. Algebraic topology can be used to determine how to procedurally generate a 3D mesh or examine the relationship between neurons in a neural network. The subject in which I will be blogging about pertains to a sub-field of Computer Graphics called Computer Vision. Algebraic topology can be used to find holes in a binary image efficiency. The paper below explains this in detail:

Study done by HP researchers:
http://www.hpl.hp.com/techreports/2009/HPL-2009-375.pdf

Website that explains the importance of Algebraic Topology with Computer Science:
http://comptop.stanford.edu/u/events/atmcs1.html

Interested even further?
http://inperc.com/wiki/index.php?title=Introductory_algebraic_topology:_...

Warning: The information presented in the links above lie WAY beyond the scope of the course. You have been warned. ;)

Water Simulation

Water simulation is a big topic so this blog will show a few example of some of the techniques people use to make water in computer look like the real thing. First is product of a research: "Real-time Realistic Ocean Lighting using Seamless Transitions from
Geometry to BRDF" (E. Bruneton, F. Neyret, N. Holzschuch, Eurographics
2010) and FFT-based ocean synthesis method of "Simulating Ocean Water" (J. Tessendorf, Siggraph 2005.





Here is the whole planet with the ocean.






This one is CUDA and openGL








This link below shows some implementation on how to achieve water simulation. 



http://www.gamedev.net/page/resources/_/technical/graphics-programming-a...

For those of you who want to learn more about the math:
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CC0QFjAB&url=http%3A%2F%2Fgraphics.stanford.edu%2Fpapers%2Fwater-sg02%2Fwater.pdf&ei=dMPZTsaJNMqQiAKrv-nbCQ&usg=AFQjCNFKTx-QohVBVqG39eFVczHEoVUB9A




Programmable Shaders Showcase By Alexander McCaleb (amccaleb)

Last thing you guys will probably hear from me on the blogs, but here's a video showcasing my shaders from Lab 4. What's featured in the video is actually a beta build of my project before I altered the skybox, but nonetheless, what's showcased is a 107% project. Hope you guys have gotten as much of an amazing experience from CMPS 160 as I have.

http://youtu.be/tI-m1L-QjAA

Animated Animal Tutorial By Alexander McCaleb (amccaleb)

Hope the lab 5/xp crunch is going well for everyone. To keep you guys entertained, I whipped up another video showing the criteria for lab 2. The video also goes into large detail on the extras. On a personal level, I was very pleased with myself with all the extras I was able to implement in this project, albiet that it took two all-nighters. It's my honor to share with you all my process.

http://youtu.be/gjmv4hE_G4I

 

Some cool c++/openGL/GLSL stuff

Here are some very cool projects done in c++/opengl/glsl combo and the results are amazing.





- Notice the Gordan Freeman above.

Interior Mapping

There are some games and CGI short clips that show high detail when it came to city skyscrapers. They would often show detailed rooms inside the building with small things like chairs and tables and bed. None of that is modeled and all of that is just the mapping on the rectangular building. This method is the interior mapping and it improves the visual quality by adding more realistic details in an urban environment.





As you can see the building looks like it was modeled to have many rooms inside. In fact, the gray scale model is just a rectangle. This can be achieved easily through a shader. 




Here is a link to some research done:   http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=14&ved=0CDUQFjADOAo&url=http%3A%2F%2Fciteseerx.ist.psu.edu%2Fviewdoc%2Fdownload%3Fdoi%3D10.1.1.49.8043%26rep%3Drep1%26type%3Dpdf&ei=cLfZTvXLFaahiAKYz92kBA&usg=AFQjCNFnlhLhoMavLzUKXrbMczbLztdUCw



Tessalation

I recently played a gamed called Crysis 2 and I loved it. The graphics on the game looked very real; especially the water and the vegetation. One of the amazing techniques Crytek, the company, used is higher levels of tessalation. Tessalation or tiling of the plane is a pattern of plane figures that fills the plane with no overlaps and no gaps.of the plane is a pattern of plane figure that fills the plane with no overlaps and no gaps. Higher dimensions means more detail. Below is a demonstration of the effect it has on how the water is rendered.





Here is another demonstration by NVIDIA on using DirectX 11 with tesselation to show very realistic ocean water.






We are familiar with normal maps and tessalation is a more advanced concept but similar. A grayscale image is fed into a shader network for a texture that the shader interprets as a way of creating more polygons on the model without consuming more resources.  More and more polygons mean higher and higher details and the game or the CGI starts to look very real indeed. More Crysis vegetation and houses:






Some links to show the basic theory behind tiling. http://www.mathnstuff.com/math/spoken/here/2class/150/display.htm
and a research paper on tessalation:

graphics.stanford.edu/papers/diagsplit/diagSplitPaper.pdf,

     http://msdn.microsoft.com/en-us/library/ff476340%28v=VS.85%29.aspx#How  


Painterly Rendering Tutorial By Alexander McCaleb (amccaleb)

My previous video documented the features of my lab 1 implementation. This video goes into a little more detail and shows the mapping between my implementation and the grading criteria. While it's probab;y far too late for anyone to make changes to their lab 1 to match what I've shown, hopefully it serves more as a hindsight deal.

Painterly Rendering Demo By Alexander McCaleb (amccaleb)

As I'm sure that everyone who isn't working on lab 5 right now is doing, here's a short video showcasing my implementation of Lab 1. I took some creative liberties in implementing the assignment as my brush types vary by the number of sides the brush polygon has as well as implementing both loading and saving canvases.

Syndicate content