Iray Programmer's Manual
Search
Iray Programmer's Manual
Preface
getting-started | Getting started
Release overview
Example programs
How to compile a program
How to run a program
Starting and shutting down the Iray API
A first image
Library design
API modules
Shared library
Naming conventions
Include files
Include file compile-time configuration
Base API configuration options for assertions
Base API configuration options for STL use
Math API configuration options for assertions
Iray API configuration options for assertions
Main API access point
Version numbers and compatibility
Interfaces
Reference counting
Handle class
Resources
Strings
Error handling
Database, transactions and scopes
Transactions
Database scopes
Runtime configuration
Logging configuration
Threading configuration
Memory configuration
Rendering configuration
Networking configuration
Rendering
Rendering overview
Rendering and canvases
Render mode selection
Progressive rendering of a scene
Instancing
Own canvas class
Asynchronous rendering
Multiple render contexts
Iray Photoreal
photoreal-introduction | Introduction
System requirements
Limitations
Matte objects and matte lights
Refractive objects and IOR handling
Progressive rendering
Caustic sampler
Architectural sampler
Light portals
photoreal-options | Rendering options
Mixed mode rendering and load balancing
Timeout prevention
Integrated noise reduction
Iray Interactive
interactive-introduction | Introduction
System requirements
Limitations
Progressive rendering
Lighting
Rendering options
Path space filtering
Output format
Global performance settings
Comparison with Iray Photoreal
Iray Realtime
realtime-introduction | Introduction
System requirements
Limitations
Rendering options
Iray Blend
Introduction
Rendering options
Scene database
Overview of the scene database elements
Creating a scene programmatically
Geometry
Creating triangle meshes
Creating polygon meshes
Creating on-demand meshes
Creating subdivision surfaces
Creating freeform surfaces
Materials
Material Definition Language
Measured materials
Editing and creating materials
Decals
Sources of light
Emission distribution functions
Light distribution from scene elements
Environment dome and implicit groundplane
Environment function
Environment dome
Implicit groundplane
Camera
Tonemapping
Photographic tonemapper
Custom tonemapper
Bloom filter
Lens
Virtual backplate
Motion blur
Physically plausible scene setup
Recommendations for geometry preparation
Modeling glass
Modeling volumes
Mapping uv-coordinates
Tessellating curved surfaces
Recommendations for lights
Using photometric lights
Using environment and sunlight
Recommendations for materials
Recommendations for cameras
Networking
Networking overview
Networking modes
Iray Bridge
Network architecture
Client integration
Server integration
Render modes
Upload progress
Video modes
Render context options
Server-side data cache
Scene snapshots
Bridge API
Delivering an image from server-based rendering
Running an HTTP server
RTMP server
RTMP client
Running an RTMP and HTTP server with mouse interaction
Customization
Extending the database with user-defined classes
Extending neuray with plugins
Extending supported file formats with plugins
Implementation of an importer
Implementation of an exporter
Implementation of an image exporter
Appendix
Supported file formats and URI schemes
URI schemes
Scene file formats
The .axf material file format
The mi_importer plugin
The mi_exporter plugin
Image file formats
Binary storage format
Canvas names in render targets
Light path expressions
Bibliography
Geometry
The following topics describe geometric concepts and examples of their use.
Subsections
Creating triangle meshes
Creating polygon meshes
Creating on-demand meshes
Creating subdivision surfaces
Creating freeform surfaces