Graphics

High-Quality Spatio-Temporal Rendering using Semi-Analytical Visibility

We present a novel visibility algorithm for rendering motion blur with per-pixel anti-aliasing. Our algorithm uses a number of line samples over a rectangular group of pixels, and together with the time dimension, a two-dimensional spatio-temporal visibility problem needs to be solved per line sample. In a coarse culling step, our algorithm first uses a bounding volume hierarchy to rapidly remove geometry that does not overlap with the current line sample. For the remaining triangles, we approximate each triangle’s depth function, along the line and along the time dimension, with a number of patch triangles. We resolve for the final color using an analytical visibility algorithm with depth sorting, simple occlusion culling, and clipping. Shading is decoupled from visibility, and we use a shading cache for efficient reuse of shaded values. In our results, we show practically noise-free renderings of motion blur with high-quality spatial anti-aliasing and with competitive rendering times. We also demonstrate that our algorithm, with some adjustments, can be used to accurately compute motion blurred ambient occlusion.
  • Developers
  • Game Development
  • Game Research
  • Rendering Research
  • Game Development
  • Graphics
  • Rendering
  • «А я рыба без трусов» или «и все-таки она вертится»

    «А по морям да по волнам

    Сегодня здесь, а завтра там,

    А я рыба, а я рыба,

    А я рыба трам-пам-пам!»

    А. Васильев, Сплин, «Рыба без трусов»



    Держу свое обещание, так опрометчиво данное в комментариях к предыдущей записи, и раскрываю тайну вращения заводной ручки.

    Media SDK 开发工具之Tracer

    Media SDK 开发包中自带了一个叫Tracer的工具, 它可以将应用程序中所有关于Media SDK的函数调用及其参数按照调用的顺序保存下来, 其中还包含了链接的库文件的具体信息。 这对于应用程序的调试还是很有帮助的。

    安装方法:
    Tracer包含在Media SDK中, 目录为:tools\mediasdk_tracer\tracer.exe

    使用方法:
    (1) 运行Tracer.exe, 指定一个输出文件,点击"Start"。

    (2) 运行任何一个基于Media SDK的应用程序,例如我们仍以Media SDK中自带的例子程序为例, 在命令行中运行“sample_decoder.exe h264 -i e:\video.h264 -hw -d3d -r”

    Adaptive Transparency, HPG 2011

    Adaptive transparency is a new solution to order-independent transparency that closely approximates the ground-truth results obtained with A-buffer compositing but, like a Z-buffer, operates in bounded memory and exhibits consistent performance. The key contribution of our method is an adaptively compressed visibility representation that can be efficiently constructed and queried while rendering. The algorithm supports a wide range and combination of transparent geometry (e.g., foliage, windows, hair, and smoke). We demonstrate that adaptive transparency is five to forty times faster than realtime A-buffer implementations, closely matches the image quality, and is both higher quality and faster than other approximate order independent transparency techniques: stochastic transparency, uniform opacity shadow maps, and Fourier opacity mapping.
  • Developers
  • Game Development
  • Game Research
  • Rendering Research
  • Game Development
  • Graphics
  • Rendering
  • Depth Buffer Compression for Stochastic Motion Blur Rasterization

    Previous depth buffer compression schemes are tuned for compressing depths values generated when rasterizing static triangles. They provide generous bandwidth usage savings, and are of great importance to graphics processors. However, stochastic rasterization for motion blur and depth of field is becoming a reality even for real-time graphics, and previous depth buffer compression algorithms fail to compress such buffers due to the irregularity of the positions and depths of the rendered samples. Therefore, we present a new algorithm that targets compression of scenes rendered with stochastic motion blur rasterization. If possible, our algorithm fits a single time-dependent predictor function for all the samples in a tile. However, sometimes the depths are localized in more than one layer, and we therefore apply a clustering algorithm to split the tile of samples into two layers. One time-dependent predictor function is then created per layer. The residuals between the predictor and the actual depths are then stored as delta corrections. For scenes with moderate motion, our algorithm can compress down to 65% compared to 75% for the previously best algorithm for stochastic buffers.
  • Developers
  • Game Development
  • Game Research
  • Rendering Research
  • Game Development
  • Graphics
  • Rendering
  • Media SDK 开发工具之Media Checker


    Intel Media Checker 是一个用来检测程序调用Intel Media SDK情况的小工具。

    主要特性
    1.检测系统当前的基本信息, 包括:核芯显卡的版本, 显卡驱动的版本, Media SDK 动态链接库的版本等。
    2. 检测程序实际调用的Media SDK的软件/硬件实现的情况。
    下载地址
    http://software.intel.com/partner/app/software-assessment#imc
    使用方法:
    (1) 安装后,执行安装目录下的IntelMediaChecker.exe, 安装目录缺省位置是例如c:\program Files(x86)\Intel\Intel Media Checker
    (2) 在下面的文本框中, 随便输入一个字符串, 例如my_check_demo, 点击 "Next"

    Media SDK编码模块的参数设置

    我们知道有些播放器对于码流的参数有一些限制, 例如codecLevel不能大于3.1。为了迎合这种限制, 用MediaSDK进行编码时, 我们可以灵活的设置这些参数, 例如将codeclevel 设置成了3.1, 可是有时候, 我们发现编码出来的码流codecLevel变成了另外的值, 这到底是怎么回事?

    在使用mediaSDK的编码功能时, 需要在编码模块初始化时设置参数, 其中一些参数是必须的, 例如IOPattern, CodecID, TargetKbps, EncodedOrder等;而有些参数,例如Codec profile 和Codec level等不是必须的, 关于这两个参数, Media SDK的参考手册中说“用户可以显式的指定,或者MediaSDK将根据分辨率,码率等参数自动的指定“。

    这里有一点需要澄清的是, 如果用户显示指定了一个不合适的值, Media SDK仍然会自动将其改为它认为的合适的值。

    关于CodecLevel, 至少在以下两种情况下, 其值可能会被MediaSDK 自动修正:

    多核处理器的九大关键技术

     

    与单核处理器相比,多核处理器在体系结构、软件、功耗和安全性设计等方面面临着巨大的挑战,但也蕴含着巨大的潜能。

    CMP和SMT一样,致力于发掘计算的粗粒度并行性。CMP可以看做是随着大规模集成电路技术的发展,在芯片容量足够大时,就可以将大规模并行处理机结构中的SMP(对称多处理机)或DSM(分布共享处理机)节点集成到同一芯片内,各个处理器并行执行不同的线程或进程。在基于SMP结构的单芯片多处理机中,处理器之间通过片外Cache或者是片外的共享存储器来进行通信。而基于DSM结构的单芯片多处理器中,处理器间通过连接分布式存储器的片内高速交叉开关网络进行通信。由于SMP和DSM已经是非常成熟的技术了,CMP结构设计比较容易,只是后端设计和芯片制造工艺的要求较高而已。正因为这样,CMP成为了最先被应用于商用CPU的“未来”高性能处理器结构。

    虽然多核能利用集成度提高带来的诸多好处,让芯片的性能成倍地增加,但很明显的是原来系统级的一些问题便引入到了处理器内部。

    1  核结构研究: 同构还是异构

    Develop 2011: Doug Binks talks about dynamic resolution rendering

    2 weeks ago, I went to the Develop Conference in Brighton, which brought together some of the leading companies in game development. Intel was among them, with some powerful demonstrations of the latest programming techniques. Among the Intel speakers was Doug Binks, who delivered a talk about dynamic resolution rendering. The idea is that instead of having the same resolution throughout a game, the resolution can be stepped up or down to strike the best balance between quality and performance.

    Hierarchical Stochastic Motion Blur Rasterization

    We present a hierarchical traversal algorithm for stochastic rasterization of motion blur, which efficiently reduces the number of inside tests needed to resolve spatio-temporal visibility. Our method is based on novel tile against moving primitive tests that also provide temporal bounds for the overlap. The algorithm works entirely in homogeneous coordinates, supports MSAA, facilitates efficient hierarchical spatio-temporal occlusion culling, and handles typical game workloads with widely varying triangle sizes. Furthermore, we use high-quality sampling patterns based on digital nets, and present a novel reordering that allows efficient procedural generation with good anti-aliasing properties. Finally, we evaluate a set of hierarchical motion blur rasterization algorithms in terms of both depth buffer bandwidth, shading efficiency, and arithmetic complexity.
  • Developers
  • Game Development
  • Game Research
  • Rendering Research
  • Game Development
  • Graphics
  • Rendering
  • Subscribe to Graphics