Caustic Graphics

Frequently Asked Questions

Choose FAQ category.

General | Sales & Marketing | Technical

General


Q. You've mentioned that you can produce digital entertainment and design content 20x faster. What platforms are you comparing?
A. We measured a 20x speed improvement on an 8-Core Mac Pro (2 Clovertown based) running at 3.0 GHz rendering a scene with roughly 2 million triangles, with and without the CausticOne hardware.
Q. Can you use more than one CausticOne board at a time?
A. For certain intensive applications, we find the performance gain from using multiple cards is nearly linear.
Q. What is the relation between Splutterfish and Caustic Graphics?
A. Splutterfish is a wholly owned subsidiary of Caustic Graphics.  However, the two companies remain independent and operate individually.
Q. Who might use CausticRT and why?
A. Any 3D artist or designer can use CausticRT. Simply put, CausticRT makes raytracing possible for 3DCG applications where it used to be too slow.
Q. Does the CausticRT platform do real-time raytracing? If so, what's the framerate?
A. With the current CausticRT technology, raytracing is performed at interactive speeds. In our demo movie, we're interactively viewing and manipulating a scene with 5 million triangles that is completely ray traced (primary+secondary+GI rays). The image viewport size in the movie is VGA resolution with 4 ambient occlusion samples; all geometry, shaders and camera can be edited at a sustained 3 to 5 FPS.
Q. Can I take advantage of CausticRT without the CausticOne card?
A. Absolutely. Anyone using an application that supports CausticRT can take advantage of it. CausticRT is an optimized raytracing platform that will take advantage of existing multi-core computers.
Q. Aren't cinema-quality ray-trace graphics only used in industries like filmmaking? Are these the sole market this new technology is aimed at?
A. No. Beyond film and video, real-time raytracing has been a key aspiration of several industries, including transportation, consumer product design, architecture, engineering, and construction. Caustic Graphics is targeting these industries as well as others we believe can benefit from the acceleration of traced rays (e.g. oil & gas).
Q. Does your technology supersede that of GPU makers such as AMD™ and NVIDIA™?
A. CausticRT does not displace a GPU or CPU in a graphics system. Rather it acts as a co-processor that traces rays and and schedules the results in such a way that GPUs or CPUs can shade them as efficiently as if they were rasterizing.
Q. What performance gains are you finding with CausticOne and how much do you expect that to improve in the next generation?
A. For the majority of scenes we've tested on an 8-core Intel CPU, we've found that CausticOne performs 10 to 20x faster than the CPU-based raytracers we've tested. In the next generation of our technology, we expect performance gains of at least another order of magnitude (i.e. 200x faster).

Sales & Marketing


Q. Can I see a demo?
A. Yes! Our demo videos are available here: http://www.vimeo.com/user1599984
Q. I am an artist/designer using a commercial rendering package. When will CausticRT be available to end users, and how much will it cost?
A. Our current generation of CausticRT is targeted at qualified software developers, and will not be sold to end users. Our next generation CausticRT technology will be available in early 2010, and by then we expect a number of commercial applications to be supporting it. This will be an opportunity for end users to take advantage of our technology, depending on what rendering software they use. At this time, we have not finalized the pricing of the next generation of CausticRT.
Q. I saw in your demo movie that you were raytracing scenes interactively using your own renderer. Is your renderer for sale?
A. In order to show the performance of CausticRT, we built a simple demo environment on top of CausticGL. However CausticRT is a raytracing acceleration platform, not a renderer. Caustic Graphics is working with a growing developer community to create and port new and existing graphics applications to the CausticRT platform. In turn, Artists and designers will soon be able to take advantage of the photorealism and advanced effects that make raytracing more compelling than rasterization.
Q. I am a developer of professional 3D software and/or hardware products. How can I learn more about porting my application or developing new applications for CausticRT?
A. The CausticRT development kit, which includes CausticOne and the CausticGL SDK is available now to qualified developers. You can contact our sales department (sales@caustic.com) for more information.
Q. How much does CausticRT cost for developers?
A. CausticRT – which includes CausticOne, the CausticGL SDK, and one year of firmware and software updates – is available to qualified developers for US$4,000.
Q. Can I receive technical support during my development work?
A. Yes, qualified developers can purchase an annual support subscription for CausticRT for $2,500. This includes 10 technical support incidents with a response time of less than two business days, and one direct contact. Additional support can be purchased in blocks of 10 incidents for $2,500.
Q. Is there a trial evaluation period?
A. Yes. Qualified developers can evaluate CausticRT before purchasing a developer kit. Please contact sales@caustic.com for the terms and pricing of the trial evaluation program.
Q. I'm going to need help incorporating CausticRT into my product beyond normal incident support. Does Caustic Graphics provide consulting services?
A. We offer our CausticEngage™ consulting services for developers that need extra assistance in creating or porting their application. Please contact our sales department at sales@caustic.com for more information.
Q. Do you have more products coming down the pipeline?
A. We've announced that we are developing the next generation of CausticRT, which is our follow-up product geared toward the end users of those rendering applications that have been ported. We anticipate having further product announcements on a regular basis.

Technical


Q. What operating systems and hardware platforms does CausticRT support?
A. CausticRT will support all 3 major operating systems. Mac OS X (Leopard) and Windows XP are available today, with Linux forthcoming (based on demand).
Q. What workstations have you qualified to run CausticRT?
A. CausticRT is currently qualified on a MacPro 3,1 and 4,1 and a Dell T7400 with 8 cores, and 4GB RAM. The CausticOne card requires a single 4-lane PCIe southbridge slot.
Q. What is the power consumption of the CausticOne card?
A. The CausticOne card uses approximately 30 Watts.
Q. What kind of architecture is CausticOne based on?
A. CausticOne is an optional co-processor that works seamlessly with CausticGL. It is a 4-lane, single slot, bus-powered PCI express card that uses two FPGA chips to allow for easy field updates. There's also 4GB of standard DDR2 SO-DIMM memory, similar to what is found in laptops.
Q. What are the bus and memory speeds of the CausticOne card?
A. CausticOne is a massively parallel scheduler that optimizes work for CPUs, GPUs, and other stream processors.
Q. Is the CausticOne card multi-threaded?
A. The CausticOne connects using a 4 lane PCI express 1.1, and uses a single bank of DDR2 memory per FPGA.  The fact that it can achieve this performance level with that amount of bandwidth is a testament to the efficiency of the entire design.
Q. Has CausticGL been compiled to support 64-bit addressing?
A. Yes! Our developer version of CausticGL supports 64 bit addressing.
Q. How does the CausticRT platform enable highly parallel CPUs and GPUs to massively accelerate raytracing?
A. When light rays are scattered in many directions (incoherent rays), tracing and shading them requires access to disparate parts of the scene: a previously impossible caching task. The CausticRT raytracing platform thrives on the incoherent rays in a complex scene, organizing them into a data flow that takes advantage of the full computational power of CPUs and GPUs.
Q. Does CausticOne support double precision floating point?
A. The current generation Caustic hardware does not support double precision floating point.
Q. What would happen if a developer wanted to use the existing OpenGL/DirectX interface to their GPU in addition to the CausticRT platform?
A. The CausticRT platform is independent of the existing OpenGL/DirectX libraries already on your system. You can use CausticRT alongside those existing interfaces and even move data between them in order to build a hybrid rendering system, if it makes sense for the application.
Q. I understand that CausticOne is a development board. How will the production board (CausticTwo) be different?
A. CausticTwo will be fabricated as a high performance ASIC, rather than the lower performance FPGA that CausticOne is based on.  This means it will be able to clock at 350MHz and have 4 times the logic density.  Additionally, CausticTwo will contain other efficiency improvements based on applying the research done with CausticOne. In general, any application that runs on CausticOne will run over 10 times faster on CausticTwo.
Q. What would happen if a GPU or CPU manufacturer developed a technology which allowed their devices to support raytracing with high efficiency?
A. The CausticGL API is being formed into an industry-standard interface for programming raytracing-based systems. The Caustic hardware is the most efficient accelerator of raytracing today, yet the CausticRT platform will work without the Caustic hardware since it includes a multi-threaded fallback to the Intel CPU. We are looking at providing fallbacks to other hardware, such as GPUs, depending on their ability to raytrace efficiently.
Q. I understand CausticGL is based on the OpenGL standard. My renderer uses DirectX, so can I still port to CausticRT?
A. The CausticRT platform is independent of the existing OpenGL/DirectX libraries already on your system. You can use the CausticRT platform alongside those existing interfaces and even move data between them in order to build a hybrid rendering system, if it makes sense for the application. Caustic Graphics can, in the future, support Direct3D directly, but that will require that we add our own raytracing extensions.
Q. Why can't I get the same raytracing performance you're showing on a GPU or multicore CPU?
A. Thanks to Moore's law, CPUs and GPUs have evolved sufficiently to solve the intersection of rays on a surface. However, they're not architected to solve the other component of the raytracing problem: data management. Thus, I/O is now the bottleneck for efficiently raytracing on a CPU or GPU. Our algorithms solve the data management component of the problem, and we use fixed-function hardware to schedule the shading information to a GPU or CPU so that it can shade triangles efficiently, as if it were rasterizing.
Q. What geometric primitives are supported?
A. The CausticRT platform supports triangles; and the vast majority of 3D graphics can be realized with these primitives. For example, even if you were performing a volumetric rendering, you could create a triangle-based structure of voxel shells for your dataset.
Q. What are the current limits on scene complexity?
A. The CausticRT platform supports triangles. With 2GB of memory (what we ship in CausticOne) we can support 100M+ uninstanced vertices with no paging required. In CausticTwo, we will support in excess of 400M+ vertices and will be providing a paging scheme to support even larger datasets.
Q. What sort of textures are supported?
A. The CausticRT platform is based on OpenGL ES 2.0. See OpenGL ES 2.0's documentation for available texture formats.
Q. Is there a restriction on the number of lights you can have in a scene?
A. There is no restriction on the number of lights you can use in a scene rendered by CausticRT.
Q. Do you support lighting models such as metropolis light transport, radiosity, path tracing, or any other global illumination algorithms?
A. It's important to note that CausticRT is a raytracing acceleration platform, not a renderer. Caustic Graphics has developed technology that supports the massive acceleration of renderers. Thus, you can choose whichever lighting model you wish to implement.
Q. How does the image quality compare with high-quality renderers like mental ray or Brazil?
A. Image quality is determined by the renderer and the tradeoffs that the renderer makes. CausticRT is a raytracing acceleration platform, not a renderer.
Q. Does CausticRT support high end features, such as Antialiasing, Depth-of-Field, Global Illumination, Motion Blur, etc.
A. Caustic is a raytracing acceleration platform.  You are free to define the features and techniques that you want to apply in your renderer, and to create whatever "look" you want to achieve.
Q. Can CausticRT accelerate transforming and deforming geometries?
A. CausticRT's acceleration structure construction is extremely efficient, but it also has the ability to reuse parts of the acceleration structure that don't need to change between rendering passes, as well as perform fast transformations (rotation, translation, uniform scaling) on selective parts of the acceleration structure for even greater performance.
Q. Can CausticRT render Non-Uniform Rational B-Splines (NURBS) directly?
A. Caustic's native intersectable is a triangle, but NURBS can be tessellated into triangles to the level of detail required.  If native rendering is required, then the NURBS surface can be bounded by triangle shells, and the final intersection point computed in a shader.
Q. Can I run CausticGL and regular OpenGL side-by-side in the same application without conflict?
A. The CausticGL interface is exported from a DLL / Framework / library that Caustic provides, and will not interfere with the operating system or vendor supplied OpenGL implementation.

Additionally, CausticGL has an optional header that can be included, so all of the CausticGL functions and entry points to be called with the prefix "rgl" instead of the conventional "gl", allowing the same code file to use both interfaces simultaneously.
Q. How programmable is CausticRT?
A. CausticRT offers a fully programmable ray tracing pipeline.  Any renderer or visual effect that uses raytracing can be implemented on top of CausticRT.
Q. How close is CausticGL to OpenGL?
A. CausticGL extends the OpenGL ES 2.0 API in 3 significant ways:

1) Primitive Objects implement a bare-bones "Retain Mode" that allows rays to access any part of the scene, rather than streaming the geometry through the pipeline, as OpenGL does.

2) Frame Shaders are a new kind of shader that executes once for each pixel or element in the destination frame buffer.  These shaders have the ability to cast rays into the scene.

3) Ray Shaders are a new kind of shader that execute for each ray that intersects the scene geometry.  These shaders have the ability to contribute color back to the frame buffer, or to emit more secondary rays.
Q. What acceleration structures, geometry, and scene organization does CausticRT support?
A. CausticRT uses triangles as its native primitive, and the acceleration structure is built internally from the triangles that are submitted.
Q. Shading alone is very computationally expensive. If the CausticOne card doesn't shade, then how can it possibly gain the performance you claim?
A. We achieve our performance gains by scheduling the shading work that needs to be done in a way that makes optimal use of the computer architecture doing the shading (i.e., CPU or GPU).
Legal  |  Privacy Policy  |  Copyright © 2006 - 2010 Caustic Graphics, Inc.
Several imageries rendered with Brazil from SplutterFish, a company of Caustic Graphics, Inc.
This website is optimized for viewing with Internet Explorer 7 or later, Firefox 3 or later, Safari 3 or later with the latest version of Flash Player installed.