Extract new translucent rendering technology

Source: Internet
Author: User
ArticleDirectory
    • Depth peeling
    • Shaderx5 2.8 ZT-Buffer Algorithm
    • Shaderx6 3.7 robust order-independent transparency via reverse depth peeling
    • GPU pro 3.3 alpha blending as a post-process
    • Shaderx7 2.7 deferred rendering transparency
    • Shaderx6 3.5 deferred Rendering using a stencel routed K-Buffer
    • Stochastic transparency
    • Deep deferred Shading

ATIHair rendering scheme:

1.In the mesh creation phase, the triangles are sorted roughly from bottom to top.

2.The following are required for rendering:4ItemsPass

3.Final rendering Effect

This solution does not require real-time triangle sorting, and the effect is also satisfactory. However4ItemsPassLarge overhead.Pass1AndPass2Can be merged into onePassIn the end, threePass.

It has been tested that this method is very suitable for rendering a large part of the hair that is not transparent and a small part is translucent. The results are quite satisfactory. It should also be suitable for large-scale vegetation rendering.

Refer:

Practical real-time hair rendering and Shading

Hair rendering and Shading

Depth peeling

1.Depth peelingCorrect pixel translucent rendering without sorting.

2.The overhead requires twoDepth buffer. Rendering process needsNItemsPass,NIs a translucent layer. ImprovedDual depth peelingAlgorithmYesN/2 + 1ItemsPass.

Depth peelingPossible problems:

1.Reduced efficiency and unstable overhead. (PassThe number depends on the camera angle, skeleton animation, etc)

2.The complexity of the solution. (How can I determine how many layers of translucent data are present and block queries ?)

3.There are no products available for reference, only technologiesDemo.

Depth peelingIs a recent hot semi-transparent rendering scheme, which is based on the linked listDx11Implementation is a major breakthrough. It may be a practical solution in the future.

Refer:

Interactive order-independent transparency

Order independent transparency with dual depth peeling

Http://users.cs.uoi.gr /~ Abasilak/bibs/depth_peeling.html

Http://www.cs.uoi.gr /~ Fudos/siggraph2011.html

Http://developer.amd.com/samples/demos/pages/atiradeonhd5800seriesrealtimedemos.aspx

Based on Line primitive Hair Rendering

UseLine primitiveUsed as the geometric element of hair renderingGPUSorts elements,Opacity MapImplement self-Shadow. It is a cutting-edge hair rendering research field. It can serve as a potential R & D direction in the future.


Refer:

GPU primitives-Case Study: hair rendering

Hair animation and rendering in NALU demo

Real-time approximate sorting for self shadowing and transparency in hair rendering

Shaderx5 2.8 ZT-Buffer Algorithm

The general idea is to use twoRender target(Zt-Buffer) Saves the transparency and depth of each layer. Sampling before rendering a translucent objectZt-Buffer, The sampled data is sorted together with the currently rendered data. Then writeZt-Buffer.

Last drawScreen quadRendering all transparent objects

Advantages:

1.Simple

2.No sorting required

Problems:

1.Hardware support is required inPSRead and write the sameRender target(NVThere is no clear document)

2.TwoRender targetOnly three layers of translucent data can be implemented

3.The method in this article is that translucent objects can only be mixed based on transparency, and illumination cannot be calculated.

To compute illumination, you need to expand the algorithm. ThreeRender target.

In view of the above three problems, the method is difficult to use in actual engineering.

Shaderx6 3.7 robust order-independent transparency via reverse depth peeling

In generalDepth peelingAlgorithm Improvement. Improve the draw sequence from the front to the back to the front. DecreaseRender targetTo save some memory.

GPU pro 3.3 alpha blending as a post-process

A Rendering Method for a large number of translucent slices in a scenario is proposed for gamePure.

This method consists of four steps:

1.Opacity in Rendering scenario

2.Render the transparency of a translucent object toRender targetTo generate a translucent screen space.Mask.

3.Use hollows to render translucent objects

4.Use translucentMaskMix opaque and hollow scenes.

This method is suitable for the rendering of a large amount of vegetation outside, and can produce soft edges with high efficiency. However, the resulting translucent pixel is not correct.

Shaderx7 2.7 deferred rendering transparency

Intercommunication tranparencyOrScreen Door transparency. The idea is to use pixel intervals inG-BufferTo save information about the opaque and translucent objects. ThenShadingThe phase blends adjacent pixels according to the transparency.

This method has been carefully investigated at the early stage of implementation of delayed rendering. It has the advantage of being able to process translucent and opaque in a uniform way. But the disadvantages are equally fatal:

If4Blocks in pixels can only be used as a hybrid unit.3The layer is translucent.

If the lighting environment and material details are complex, especially when the highlights are strong, you can see obvious particle sensation. The more transparent layers, the worse the effect.

Shaderx6 3.5 deferred Rendering using a stencel routed K-Buffer

UseMulti-SampleOfRTSaves up to eight layers of translucent information.Stencel-BufferAs a pairSub-pixelOperation means. Finally, the multi-layer translucent pixels are mixed in post-processing mode.

Advantages:

1.Only oneGeometry pass, AndPost-Process pass.

2.Efficiency RatioDepth peelingHigh.

Disadvantages:

1.YesDx10Supported (not availableMsaaRenderingMulti-SampleOfRTAndShaderSampling in separate samplingMulti-sample RTOfSub-pixel.)

2.Maximum8The layer is translucent.

3.It is difficult to achieve different translucent layers of materials.

References:

Stencel routed a-Buffer

Http://www.humus.name/index.php? Page = 3d & id = 76

Stochastic transparency

UseMulti-sampled RT, The translucent color of each layer is randomly saved to the currentFragmentOfSub-pixelThe random value is proportional to the transparency of the pixel. In the end, we can obtain an approximate and correct translucent effect on the overall level.

Advantages:

1.No sorting required

2.Memory usage is controllable (oneMulti-sampled RT)

3.Only onePass(Some improvement methods require an additional full screenPass)

Disadvantages:

1.Random algorithm to generate noise

2.YesDX 1, 10.1Supported (requires accessMulti-sampled RTOfSub-pixel)

Http://enderton.org/eric/pub/StochasticTransparency_I3D2010.pdf

Deep deferred Shading

Use multipleG-Buffer(Deep G-Buffer), Rendering process andDepth peelingSimilarly, render it again to get a layer of depth. This layer servesDepth bufferAnd then render the next layer. The difference is thatDeep G-Buffer. MultipleG-BufferStores multi-layer translucent information. In this way, you can use the method of delayed illumination to render translucent. However, it costs a lot of memory usage.

Http://www.humus.name/index.php? Page = 3d & id = 75

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.