Building rendering and production pipelines for Rainbow Six Mobile

Apr 15, 2026
Rainbow Six Mobile | Ubisoft Montreal

Bringing large-scale, destructible environments to mobile is both a rendering and production challenge. In Rainbow Six Mobile, core gameplay depends on real-time fragmentation that continuously reshapes visibility, layout, and performance cost, putting constant pressure on draw calls, memory, and scalability across a diverse device landscape.

Rather than porting Tom Clancy’s Rainbow Six Siege to mobile, the Ubisoft Montreal team rebuilt the experience from the ground up. This required rethinking rendering, content pipelines, and tooling to support dynamic gameplay within strict performance budgets while maintaining the visual and tactical fidelity the franchise is known for.

Over seven years of development, they designed a pipeline that tightly couples runtime optimizations with content creation. From automated map generation and validation to custom rendering systems and shader workflows, the need to scale efficiently across devices shaped every decision and enabled fast iteration.

THE CHALLENGE:

Balancing high visual fidelity with performance and memory constraints on mobile

PLATFORM:

iOS, Android

LOCATION:

Montreal, Canada

Rainbow Six Mobile: A Unity case study

A defining feature of Rainbow Six Mobile is its procedural destruction system. At its core, the gameplay loop revolves around attackers and defenders contesting control of fortified spaces, where breaching, reinforcing, and manipulating the environment are as critical as direct combat. In each competitive match, structured as short, round-based tactical encounters, environments fracture, opening new sightlines and reshaping gameplay spaces in real-time. While essential to the tactical experience, this system introduces significant rendering challenges.

“As geometry breaks and spaces open, occlusion culling becomes less effective, increasing draw calls and impacting performance,” explains Oriam De Gyves, programming team lead at Ubisoft Montreal. “Since destruction is core to gameplay, it directly shapes how levels are designed and optimized.”

To support this dynamism on mobile, the team implemented static environment batching to reduce draw calls, which influenced how assets are authored and assembled. “Every pipeline decision affects both performance and production workflows,” says De Gyves.

Scalability added further complexity. Target hardware ranged from high-end to low-end mobile devices, requiring trade-offs like limiting or excluding unsupported technologies. “We had to ensure consistent performance across a highly fragmented device landscape,” says De Gyves.

Rainbow Six Mobile

The results

  • Decreased initial setup time for new maps from weeks to seconds
  • Minimized draw calls required to render a map by approximately 60–70%
  • In certain scenarios, further reduced draw call budget by up to an additional 20% using a custom visibility system
  • Lowered visibility system runtime cost to approximately 0.12% of the CPU budget, while shortening CPU rendering time by 5–10%

Streamlining map production

In Rainbow Six Mobile, map production focuses on fast, repeatable content creation. At the center, a custom map generation system produces structured levels and gameplay variants in seconds, replacing weeks of manual setup. “This gives designers a consistent foundation to iterate on layout and gameplay without rebuilding maps from scratch,” says Tito Morab, graphics technical director at Ubisoft Montreal.

Maps rely on interconnected systems spanning multiple disciplines, including art, design, gameplay, AI, and audio. “A template-based creation tool centralizes this distributed knowledge and enforces consistent structure from the outset,” explains Morab. “This reduces setup complexity, minimizes configuration errors, and ensures consistent standards across new and duplicated maps.”

Performance constraints are incorporated during authoring. Environments are designed around batching and occlusion, enabling designers to evaluate maps from key gameplay viewpoints and identify issues early in the creation process.

Dedicated systems support iteration, including lighting workflows, remote baking, and in-Editor debugging tools that allow artists to inspect overdraw, lighting, and mesh complexity directly within the Editor.

Rainbow Six Mobile | Ubisoft Montreal

The authoring window allows artists to preview the batched geometry and combined textures

Validating data for runtime

Once maps are created, they move through a structured validation and processing pipeline that prepares them for runtime across devices.

“First, we validate map data against production standards,” explains De Gyves. “The system enforces rules for hierarchy, naming, LODs, materials, and memory budgets, with stricter checks as content approaches release.”

These constraints are refined through validation, where batching, occlusion data, and memory budgets are applied during processing.

Validation operates continuously across the pipeline. Data enters the pipeline in a compliant state and passes through checks that adapt to the stage of development. Early stages prioritize flexibility to support iteration, while later stages enforce stricter constraints to ensure stability and consistency before release.

Rainbow Six Mobile | Ubisoft Montreal

The team voxelizes the scene and performs a raycast operation to determine the visible rooms from any given area of the map

Validation also applies to external workflows such as lighting. When artists request remote bake jobs, the system analyzes inputs before execution, catching misconfigurations early and preventing failed builds. Once processing completes, results are returned for review so artists can verify and approve lighting before integration.

After submission, a daily automation pipeline transforms content into runtime-optimized data. This includes custom batching based on draw call budgets, precomputed occlusion data, and generation of runtime variants for each graphics quality tier. Each device loads only the data it requires, reducing memory usage and avoiding unnecessary assets.

Rainbow Six Mobile | Ubisoft Montreal

Visual debugging system to inspect data in the Scene and Game views – no build or setup required

In-Editor debugging tools support this workflow by visualizing draw calls, transparency, lighting, and mesh complexity, and by enabling simulation of lower-end devices directly in the Editor.

Procedural destruction adds runtime complexity. A custom visibility system voxelizes scenes and precomputes line-of-sight data to reduce the cost of dynamic geometry and maintain performance during gameplay.

Rainbow Six Mobile | Ubisoft Montreal

The light baking tool performs data validations and prepares the scene before the bake

Creating artist-centric tools

Tool development prioritizes usability as much as functionality, with the goal of creating workflows that artists consistently adopt while reducing manual work and production errors.

“Understanding the problem the tool is solving, and how artists actually work, is crucial,” explains Morab. By observing workflows and gathering early feedback, the team identified friction points and iterated quickly on tool design.

These insights led to improvements such as batch editing, context-sensitive controls, and simplified interfaces, enabling artists to work efficiently without managing underlying technical complexity.

The team also sees strong potential in transitioning from Immediate Mode Graphical User Interface (IMGUI) to Unity’s UI Toolkit, which separates structure, styling, and behavior more clearly. “This will improve collaboration between the tech art and engineering teams, and make tools easier to maintain and scale,” says Morab.

Rainbow Six Mobile | Ubisoft Montreal

Rainbow Six Mobile | Ubisoft Montreal

Accelerating shader workflows

Alongside map production and validation, shader workflows form a key part of the rendering pipeline, ensuring that visual fidelity scales efficiently across devices.

Shader and material workflows focus on efficiency to deliver high-quality visuals on mobile devices. The team’s tech artists use Shader Graph to prototype and iterate quickly without relying on graphics programmers.

“Shader Graph lets us rapidly test visual ideas while controlling implementation cost,” explains Morab. “Once finalized, shaders are converted for code optimization and integrated into device-specific quality tiers.”

To maintain performance across hardware, automated tooling evaluates shader changes. ARM’s Mali Offline Compiler integrates as a static analysis tool, analyzing shader changes across multiple GPUs and generating performance reports for each device tier. These reports align with the project’s graphics quality strategy, where different keywords and configurations are enabled for each quality level.

Rainbow Six Mobile | Ubisoft Montreal

Rainbow Six Mobile | Ubisoft Montreal

“This approach makes it possible to visualize how shader changes scale across devices and how performance evolves over time,” says De Gyves. “By surfacing this information early, developers can identify regressions, compare variants, and make informed decisions during daily development.”

A custom shader variant management system, based on Unity’s IPreprocessShaders interface, controls memory usage by reducing unnecessary keyword combinations while preserving visual flexibility.

The pipeline also automates shader warmup, reducing manual setup and preventing runtime stutter to ensure smooth gameplay across devices.

Rainbow Six Mobile | Ubisoft Montreal

Rainbow Six Mobile | Ubisoft Montreal

Reflecting on rendering tool development

Rainbow Six Mobile’s development experience shows that pipelines work best when they support both artists and engineers.

Morab emphasizes that tools must function correctly and integrate naturally into existing workflows: “When done well, tools let artists focus on creativity while developers maintain predictable, scalable outputs.”

The team prioritizes diligence, proper planning, and consistency. “Aligning content creation with runtime constraints early prevents costly iterations,” says De Gyves. “Embedding performance considerations into every stage, from map generation to shader optimization, ensures high-fidelity visuals without compromising device performance.”

Collaboration and shared ownership are also key. “Our associate technical director of maps, Vincent Coupal, along with the broader rendering and map production teams were integral in successfully building the foundation and scaling the game,” says Morab.

Download Unity Pro today

Start creating games that compete with, and surpass the quality and success of big studio releases with help from powerful tools, support, verified partners, and a vibrant community.