
Graphics
saintony
这个作者很懒,什么都没留下…
展开
-
Belated enlightenment on Quaternion
The first time when I read chapter 4 "Transforms", the Quaternion part confused me a lot.You may have already read this great article: http://betterexplained.com/articles/a-visual-intuitive-guide-to原创 2015-03-24 01:11:37 · 682 阅读 · 0 评论 -
My Fluid Simulation (SPH) Sample (3) – Optical Effects using GLSL, and Integration of Physical Model
I would say my SPH application is ALMOST done. In recent 2 days I finished optical effects of curvature flow using GLSL.Cubemap using GLSLAs the paper titile indicates “Screen-Space”, the first rendering step is to the regular object, and the second原创 2010-08-18 11:23:00 · 2233 阅读 · 6 评论 -
My Fluid Simulation (SPH) Sample (1) – Rigid body model + N-S model
I keep a strong interest for fluid simulation (specifically water simulation) and this is my first implementation for SPH (Smoothed Particle Hydrodynamics). This post is the first part of the whole application – SPH framework. 1) Rigid Body model原创 2010-06-22 01:00:00 · 1830 阅读 · 0 评论 -
My Fluid Simulation (SPH) Sample (2) – Curvature Flow
After a long time of break – break by my GI renderer, I picked up my SPH application again. In recent week, I managed to implement Curvature Flow described in the paper “Screen Space Fluid Rendering with Curvature Flow” (http://portal.acm.org/citation.cfm?原创 2010-08-15 01:40:00 · 1917 阅读 · 0 评论 -
My render update – Ambient Occlusion
Ambient Occlusion is a relatively new algorithm proposed in recent years. This algorithm can improve the reality of the scenes quite a lot. It considers the occlusion among objects. You can treat it as ambient shadows. Let me post my demo images here: No原创 2010-08-05 22:32:00 · 1372 阅读 · 1 评论 -
A good paper on SPH
As known ‘Fluid Simulation for Computer Graphics’ only emphasizes Eulerian view (fixed grid) and almost no attention is paid on Lagrangian method. For beginners who are more interested in the latter, I recommend one paper on SPH: Particle-Based Fluid Si原创 2010-06-10 00:09:00 · 895 阅读 · 0 评论 -
PBRT reading notes 3
This note is for Chapter 8 to 10. Things are getting more interesting in these chapters. Chapter 8 ‘Film & the Imaging Pipeline’ actually elaborates some image processing issues mainly on tone mapping. Tone mapping is not as simple as I thought before(of原创 2010-06-07 16:45:00 · 547 阅读 · 0 评论 -
My renderer update – Photon-Mapping(caustics) & Texture
In recent two weeks, I finished another two important components of a GI renderer: caustics and texture.[Texture]: I use DevIL as the basic image loading library. DevIL also offers Mipmap building function. I adopt it directly and what I have implement原创 2010-08-04 04:35:00 · 992 阅读 · 0 评论 -
‘Fluid Simulation for Computer Graphics’reading notes 2
Chapter 3 (Advection) and Chapter 4 (Incompressibility) are the essence of fluid simulation. Chapter 1 & 2 establish the physical model – Navier-Stokes Equation – these two chapters really elaborate how to make your fluid flowing. Chapter 3 (Advection) st原创 2010-06-02 01:44:00 · 1028 阅读 · 0 评论 -
PBRT reading notes 2
This is the note for reading Chapter 4 to 7: Intersection acceleration, Color & Radiometry, Camera Models and Sampling & Reconstruction. Chapter 4 and 5 (Intersection acceleration, Color & Radiometry原创 2010-05-29 20:24:00 · 636 阅读 · 0 评论 -
My Instant Radiosity
Instant Radiosity is an interesting GI algorithm. It is simpler and has less jaggies comparing with the Monte-Carlo group of radiosity algorithms. Currently I have implemented it by two passes: the first pass is the traditional ray-tracing algorithm and t原创 2010-07-18 16:47:00 · 1047 阅读 · 0 评论 -
‘Fluid Simulation for Computer Graphics’reading notes 1
I put a reading notes 1 for this book weeks ago. But at that time I didn’t get the general idea of Fluid Simulation though technical details are digested well (weird!)Someone from Internet suggests原创 2010-05-23 00:15:00 · 965 阅读 · 0 评论 -
My renderer update – Instant Radiosity moved on GPU
With ray-tracing as the framework, Instant Radiosity is mainly about point lights record and replacing. In my application, point lights are collected in the iterative ray recursion process, and they will be passed into the second pass. No tricks here. Th原创 2010-09-09 20:55:00 · 870 阅读 · 0 评论 -
My renderer update – GPU Acceleration on Intersections (more than 2x faster)
According to many papers, about 70%-80% of rendering time is spent on intersections. So the first target to optimize for performance is to accelerate intersections. Due to the parallelism essence of rays, GPU is of course the best choice. After copying a原创 2010-09-05 14:16:00 · 1107 阅读 · 5 评论 -
My renderer update – Blooming
Blooming is a basic image processing operation, which is an lerp between the blurred(convoluted) values and the original values. Not complex but looks interesting: Another two more interesting image processing techniques are Tone-Mapping and Gamma C原创 2010-09-07 00:03:00 · 761 阅读 · 0 评论 -
A belated enlightment on [Lacawell06JGT]
About one year ago I did a project on Bill-Board Cloud (http://blog.youkuaiyun.com/saintony/archive/2010/04/28/5541052.aspx), and the refered paper is [Lacawell06JGT] "Stochastic Billboard Clouds for Interactive Foliage Rendering".I didn't understand the 2nd ste原创 2011-04-19 02:36:00 · 756 阅读 · 0 评论 -
Geometry clustering using K-Means algorithm
<br />Geometry clustering is usually useful when an object is supposed to be represented by bill-boards, which is a common technique used in real-time graphics.<br /> <br />There are a bunch of clustering algorithms, and "k-means" is one of them, and a rel原创 2011-04-06 02:32:00 · 829 阅读 · 0 评论 -
“Physically based Rendering” first round done
<br />I found it has been exactly one year since I got this book from Amazon, by checking my mark on its cover - Mar. 29 2010.<br /> <br />I would say it deserves an essentially joyful journey of reading it. Unlike "advanced global illumination", this book原创 2011-03-31 12:23:00 · 744 阅读 · 0 评论 -
My implementation of “Lightcuts”(CPU version) – got 100% speed-up
My CPU version(C/C++) of Lightcuts (http://portal.acm.org/citation.cfm?id=1073318) has been done right now. It rocks, indeed. (Testing Platform: Intel Core 2 Quad CPU Q6700 @2.66 GHz) My initial testing sample: 3 venus model (1418 triangles for eac原创 2011-02-10 19:34:00 · 1085 阅读 · 0 评论 -
Volume Rendering using CUDA – Trilinear Interp. and Image Color-Map
The latest update of my GPU-based Volume Rendering Engine: 1. Trilinear Interpolation (smoother images) 2. Ray-tracing Blending (see the nanorod geometry) 3. Image Color-map (Loading regular pictures as the color-map)原创 2010-11-18 14:58:00 · 941 阅读 · 0 评论 -
Dynamic Cube-Mapping
Static cube mapping is only several vector calculation in GPU at runtime. But dynamic cube mapping is different. The typical way to do this is to combine an updated static cube-mapping for each frame. The required action is to use camera to take 6 pictures原创 2010-11-02 19:00:00 · 1063 阅读 · 2 评论 -
Volume Rendering using CUDA – Transfer Function & Anti-Aliasing
Here are some pictures of my GPU-based volume rendering engine: Included functions: 1. Anti-Aliasing (not applied in the above picture) 2. Transfer Function on Alpha & Color The highlight is that it reaches an interactive FPS: for 512x512 resolution原创 2010-10-31 18:29:00 · 964 阅读 · 0 评论 -
Volume Rendering using CUDA – Basic framework
nVidia Tesla architecture GPU + CUDA + OpenGL(FBO mapped to CUDA) is probably the best solution framework for Volume Rendering(Ray-casting) Ray-casting is probably the best scenario for parallel computing. More pictures are coming soon!原创 2010-10-21 00:40:00 · 870 阅读 · 1 评论 -
VTK rocks
The primary visualization tool for my Scientific Visualization course this semester is VTK. I would say it is really a great library. It is built on OpenGL and it opens to Java/Python/C++. VTK follows a pipeline architecture. It takes sometime to get acq原创 2010-10-12 02:19:00 · 1011 阅读 · 0 评论 -
My renderer update – Tone Mapping (Global Op.)
I tried Tone-mapping a little bit. The first try I took is the simple “Spatially Varying Nonlinear Scale ” which is a global tone-mapping operator. GLOBAL, means no local contrast information will be handled, each pixel will be processed according to globa原创 2010-09-08 01:20:00 · 946 阅读 · 0 评论 -
One critical issue in Instant Radiosity
<br />I just realized: for each individual pass of Instant Radiosity, only one bounce of diffuse illumination can be evaluated. (At least true in my current implementation.) So to have a relative complete GI effect, many passes are necessary.<br /> <br />N原创 2010-09-20 10:27:00 · 801 阅读 · 0 评论 -
PBRT reading notes 1
PBRT is a widely spread term that represents another notion for ‘global illumination’. (I met the phrase of “physically based calculation of illumination” in the book of “advanced global illumination”原创 2010-05-20 01:56:00 · 551 阅读 · 0 评论 -
Building PBRT using VS2008
Here’s my building tips for PBRT (Windows 7 32b, MSVC 2008). VS2008 suffers from many building errors since PBRT was originally released using VS2003 – because C/C++ runtime library differs among the原创 2010-05-20 14:44:00 · 765 阅读 · 0 评论 -
A Scene-Graph based Ray Tracer (3) – Light model, Anti-Aliasing, Ray-tracing
This article will cover all graphical topics that are essential for the ray-tracer.[Light Model] I adopt the OpenGL light model (Phong Model): color = emission(material) + ambient(ligh原创 2009-12-13 17:20:00 · 925 阅读 · 1 评论 -
OpenGL + CUDA + DevIL rocks!
With OpenGL as the graphics API, I utilized CUDA as the performance saviour – Yes, on nVidia video cards, it runs fast like hell. My professor also recommended us another simple but fun tool – DevI原创 2010-02-11 13:31:00 · 1022 阅读 · 2 评论 -
‘Advanced Global Illumination’reading note 1
I’m so lucky to find the book of ‘Advanced Global Illumination 2nd’ as my first guidance for studying global illumination. It seems that it is quite a authoritative book for each one who is new to GI原创 2010-02-06 19:03:00 · 781 阅读 · 0 评论 -
‘Interactive Computer Graphics’5th. completed
This is the perfect book for CG rookies because: 1. It covers almost all possible topics of CG fundamentals 2. It offers some really great engineering suggestions 3. It has got a perfectly intel原创 2009-11-29 02:27:00 · 883 阅读 · 0 评论 -
GPU & CUDA
I just finished a book on GPU with CUDA, which is composed by several Chinese authors – I mean, it still suffers from two major common drawbacks of most Chinese technical books:1. listing knowledges原创 2010-01-23 19:08:00 · 724 阅读 · 0 评论 -
FoCG finished…
It is said ‘Fundamentals of Computer Graphics’ is widely adopted by many famous US universities as the first book for computer graphics courses. I can understand, that this book really covers a wide r原创 2009-11-01 18:06:00 · 834 阅读 · 0 评论 -
Why Homogeneous Matrix in CG?
In CG the common matrix convention is to use Homogeneous Matrix to perform various transformations, which are 4x4 matrices. This is a really basic common sense in CG. But have you ever consider原创 2009-11-06 13:33:00 · 796 阅读 · 0 评论 -
Learning Curves and Surfaces…
Curves and Surfaces are critical in computer graphics, especially in graphics modeling. Also it is one of the most difficult areas in graphics since it requires a relative advanced mathematics ability原创 2009-10-28 15:29:00 · 747 阅读 · 0 评论 -
My sample of Marching Cube Algorithm
http://local.wasp.uwa.edu.au/~pbourke/geometry/polygonise/ http://users.polytech.unice.fr/~lingrand/MarchingCubes/applet.htmlMarching Cube algorithm is a traditional volume-rendering algorithm. T原创 2009-10-18 22:58:00 · 4750 阅读 · 0 评论 -
OpenGL Programming Guide 6th done, roughly
Before getting started with intensive practical exercises in CG, you need to learn a CG language first. I think OpenGL is the first choice. In a word, I just finished reading the legendary “Open原创 2009-09-22 14:08:00 · 721 阅读 · 0 评论 -
Floyd-Steinberg Dithering Algorithm
For dithering: http://en.wikipedia.org/wiki/DitheringFor Floyd-Steinberg Dithering Algorithm: http://en.wikipedia.org/wiki/Floyd-Steinberg_dithering 1. I implemented this algorithm by原创 2009-09-17 03:00:00 · 3292 阅读 · 0 评论 -
A simple sample of Interactive Surface of Revolution
What is ‘Surface of Revolution’? http://en.wikipedia.org/wiki/Surface_of_revolution What is Beizer Curve? http://en.wikipedia.org/wiki/Bezier_curve The latest lab is to compose an interactive原创 2010-02-18 05:04:00 · 625 阅读 · 0 评论