Optimizing Your Creations for Second Life Mobile

Creating & Optimizing for Mobile

Tips for Making Your Content Shine on Smaller Screens

For two decades, Second Life has been a living, evolving universe built by its creators. With the arrival of Second Life Mobile, that same world now fits in your hand. The same avatars, the same creations, the same economy - all accessible from anywhere.

For creators, this shift represents opportunity. A mobile audience is larger, more spontaneous, and more connected to their social networks. It's a new generation of users discovering your work while waiting for coffee, commuting, or relaxing at home. This guide will help you optimize your content so it excels on mobile devices -- with the added benefit of improving performance for desktop viewer users as well.

Overdraw

Overdraw is a technical term referring to how a graphics processor renders a pixel on screen - when a 3D object is rendered on the screen, you ideally want to have each final pixel only written to once; like painting - only the final layer matters - some things like transparency can result in multiple objects contributing to a pixel, but the fewer times the better.

Avoid onion layering 

Many avatars - especially older mesh bodies - use layered transparency to show or hide body parts. On mobile GPUs, every transparent surface must be redrawn, often multiple times per frame. While we've implemented dithered transparency to mitigate this, we aim to support standard transparency techniques, which means onion layering becomes a performance bottleneck on constrained mobile hardware. It also complicates draw ordering and batching - so as a rule of thumb, minimize overlapping transparent layers wherever possible.

Keep particle effects restrained 

It's tempting to go overboard with emitters, sparkles, and animated effects. Desktop GPUs can often brute-force through dense particle clouds, but mobile devices hit strict fill-rate limits quickly. Reduce particle counts and sizes to ensure your effects remain visible without overwhelming the scene or device. A few well-placed, smaller particles look cleaner and perform better than a dense swarm that bogs down rendering.

Watch for microtriangles 

Tiny triangles in your meshes, especially long thin triangles, devastate GPU efficiency. When triangles shrink smaller than a pixel, the GPU still processes them fully, meaning multiple triangles in a single pixel trigger redundant rendering passes instead of a single draw. 

Many Second Life meshes contain very high-density sections in otherwise reasonable models. These concentrated dense areas dramatically inflate rendering costs. Building high quality LODs can help with this - as the model shrinks, the average triangle size increases proportionally.

Learn more: ARM Mobile GPU - 3D Art Best Practices

Download Sizes

Reduce texture count

Every unique texture expands the total download size and memory footprint. In Second Life Mobile, we need both fast world downloads - enabling quick teleports and instant arrivals - and strict adherence to RAM limits to avoid the operating system terminating our app. 

The average mobile device allows us to use between 500MB and 1.1GB of unified memory, which must cover both the application itself, and all the loaded content. To help us with this, reuse textures across multiple objects. The fewer unique files users download, the faster your content loads and the smoother their experience becomes.

Recycle assets

Game designers have long built rich worlds without massive file sizes through smart asset reuse. Rotate, scale, and recolor existing meshes instead of importing new ones. This approach saves memory while creating visual consistency. Halo 3 famously reused just a single rock model for entire levels, rotating and scaling it to create the variations - proof that clever reuse can make a world feel expansive and detailed without excessive duplication.

Textures

Don't prematurely optimize texture sizes

You don't need to second-guess mobile texture scaling. The viewer automatically adjusts texture resolution and compression based on available resources, which vary by device. Even if you upload large, detailed textures, the client downscales them when needed. It's better to maintain high-quality source assets and trust the mobile runtime to handle optimization; however there are definitely times when using a lower resolution texture is a good idea, especially for small objects or surfaces.

ASTC compression

Mobile devices use Adaptive Scalable Texture Compression (ASTC) rather than JPEG2000 (which desktop viewers use). ASTC loads faster on-device and uses substantially less graphics memory. It's efficient, though compression can alter color values and detail clarity. Test your textures on an actual mobile device to verify their appearance.

Alpha handling caveat

Our current texture re-compressor doesn't distinguish between alpha channels used for transparency and those used as custom data (like emission masks). When alpha is set to zero, RGB values may be forced to black. If you rely on alpha as a data channel, set the alpha to a near-but-not-quite-zero value instead. Our compressor will then preserve the color data properly.

PBR not yet supported

As of May 2026, Physically Based Rendering will arrive on the mobile viewer in a future update. For now, use standard material workflows. We will load the pre-PBR fallback texture slots, but this feature is on our roadmap.

Meshes

Avoid hidden geometry

Hiding objects inside other meshes might seem harmless - or even clever for marking your content but it still costs draw calls and GPU bandwidth. When you bury creator logos, extra props, or decorative details inside walls or avatars, the GPU processes those polygons even though they're never visible. Keep meshes clean and visible-only. If you want branding, consider surface decals or unused texture sections rather than hidden geometry.

Skip baked text or logos in UV layouts

Embedding names or symbols directly into UVs might mark your content, but it tends to create regions of very high polygon density with sharp, thin microtriangles. That uneven distribution causes rendering problems. Instead, use overlays, decals, or separate mesh elements that can be simplified independently. Alternatively, consider supplying lower-detail LODs without these elements for mobile use.

Keep polygon density consistent

Even, predictable topology helps models look good and LOD gracefully. When one area has far more polygons than others, LOD reduction algorithms struggle to decimate evenly. Consistent mesh density across the model prevents flickering, popping, and unpredictable lighting artifacts - especially important since we use per-vertex lighting on many devices.

Use LODs properly

Level of Detail settings exist to preserve performance. Uploading identical meshes, or deliberately incomplete models at every LOD level defeats that purpose. Each level should contain progressively fewer polygons - ideally halving at each step. Smart LODs make large scenes viable even on modest devices.

Meshes are frequently over 50% of our memory use, and one of the hardest for us to automatically optimize on device. Supplying good quality LODs is one of the best things to help us manage limited resources.

Lights

Be aware of light counts

Every dynamic light affects the number of shading calculations we have to do, and mobile devices can only process a small number efficiently. The mobile viewer may restrict lighting to the nearest and brightest few lights per object - sometimes as low as two lights. Plan your environments accordingly. 

Prioritize the lights that define your atmosphere and remove the rest. Baked lighting or ambient color gradients can fill visual gaps without extra GPU cost.

Match falloff curves

Unity's mobile lighting model uses a fixed quadratic attenuation curve (meaning the brightness is more heavily impacted by distance from the light), which differs from the desktop version's more gracefully linear falloff option. 

If your content looks too dim or sharp-edged on mobile, adjust the falloff value to 1.0, which more closely mirrors how mobile interprets lighting data, then adjust your lights accordingly.

Audio and Sound

Design for varied playback environments

Mobile users listen through tiny phone speakers, earbuds, or Bluetooth headphones - often in noisy environments like cafes, transit, or outdoors. Unlike desktop users with dedicated speakers or studio headphones, mobile users may struggle to hear subtle audio cues or delicate soundscapes. Design audio that works across this range of conditions.

Keep audio lightweight

Audio contributes to download size and memory usage just like textures and meshes. While audio is used more sparingly; it still contributes to what we need to pack into our limited memory.

Respect silent mode and interruptions

Mobile users frequently mute their devices or switch between apps. Your content should degrade gracefully when audio isn't available. Don't rely solely on audio cues for critical gameplay or navigation - always provide visual alternatives.

Avatar Optimization

Avatars are the highest priority

Users see their avatar constantly, so avatar performance directly impacts their experience. A poorly optimized avatar affects not just the wearer but everyone around them. 

Target aggressive polygon budgets

Aim for 30,000-50,000 triangles maximum for a complete avatar including all attachments. Desktop avatars often exceed 200,000 triangles, but mobile hardware can't sustain that in social spaces with lots of users.

The easiest way for us to be able to handle this effectively is to provide high quality mesh LODs (see above), so we can show more avatars reliably.

Consolidate materials and textures

Each material requires a separate draw call. An avatar wearing items from multiple creators can easily accumulate 20+ materials. Where possible, combine textures into texture atlases and reduce material count. A single 2048x2048 texture atlas is more efficient than eight 512x512 textures for different body parts. We have also spent a lot of time making ‘Bakes on Mesh’ work well on mobile - and would recommend creators use this.

Network Connectivity and Movement

Design for intermittent connections

Mobile users experience connectivity challenges that desktop users rarely face. WiFi handoffs, cellular dead zones, and fluctuating signal strength can cause brief connection drops or latency spikes. These interruptions affect movement sensitivity and responsiveness - an avatar might stutter, rubber-band, teleport slightly, or fail to interact with objects smoothly.

Make colliders forgiving

When network latency increases, even simple navigation can frustrate users. Small or precisely fitted colliders become harder to interact with when there's a delay between input and response. Enlarge collision boundaries and use invisible walls to help protect avatars from accidentally falling off bridges or other ledges.

This extra margin compensates for network jitter and position uncertainty, making your content feel responsive even when connectivity isn't perfect. Generous colliders help mitigate potential frustration, especially in crowded or high-traffic areas.

Camera and Viewport Considerations

Respect portrait mode constraints

Most mobile users hold their phones vertically, creating a tall, narrow viewport that's fundamentally different from desktop's wide landscape view. Portrait mode means less horizontal visibility and a camera that feels more constrained. Factor this into your scene design - avoid layouts that depend on wide panoramas or expect users to see far to the left and right simultaneously.

Account for thumb interference

Unlike desktop users with an unobstructed view, mobile users physically hold their device, often with a thumb resting on or near the screen. This means part of the viewport may be obscured during normal interaction. Important visual information - especially near screen edges - can be blocked by the user's own hand.

Leave room for camera movement

Mobile users frequently adjust their camera angle to see around their avatar or explore tight spaces. Design environments with enough clearance for the camera to swing and pan without constantly clipping through walls or hitting barriers. Tight corridors, low ceilings, and cluttered layouts become frustrating when the camera can't find a comfortable viewing angle. Give players space to frame their shots and navigate the world with fluid camera control.

Interaction

Use generous touch targets

Touch input lacks the precision of a mouse cursor. Small or tightly shaped interactive zones frustrate mobile users, especially in crowded scenes. Enlarge interactive zones slightly beyond visual boundaries to make interaction forgiving and intuitive. Smooth gameplay beats pixel-perfect accuracy.

Expect limited scripting

Mobile interactivity is evolving. For now, stick to simple triggers, animations, and toggles that don't depend on complex UI or text input. More advanced scripting support is on the roadmap, so build with modularity in mind - you'll be ready to expand features as the platform matures.

Cross-Platform Considerations

Maintain a single content base

Creating separate versions for desktop and mobile is tempting but creates maintenance headaches. Instead, optimize your base content to work well everywhere, then provide optional high-detail variants for desktop if needed. Users switching between platforms expect consistency - the same outfit should look recognizable on both their phone and their PC. We don’t want to break the experience into dedicated mobile and desktop experiences.

Mobile optimizations improve desktop too

Efficient content benefits everyone. Reduced polygon counts, consolidated textures, and smart LODs that improve mobile frame rates also mean better desktop performance - especially valuable in crowded social spaces where dozens of avatars gather. Optimization isn't about making mobile work despite limitations; it's about making all platforms better.

Monetization and Audience Growth

The in-world economy works the same across platforms. Linden Dollars still move as before, and creators continue to earn from sales, rentals, and experiences. What changes is audience behavior. Mobile users expect lightweight content, shorter sessions, and fast load times. Design with immediacy in mind: quick access, strong visuals, and intuitive interaction. Consider small-scale products, portable experiences, and pop-up events that mobile users can enjoy in minutes rather than hours.

Market your mobile compatibility

As mobile adoption grows, mobile-optimized content becomes a selling point. Advertise when your creations work well on mobile devices. Users actively seek content they can enjoy anywhere, and creators who deliver that experience will build new audiences.

Community and Collaboration

Second Life has always thrived on its creator community. Mobile brings that culture to more people, in more places, more often. Musicians can stream to both desktop and mobile audiences. Artists can share their builds with people who may never have tried desktop virtual worlds. 

Help us share optimization tips, collaborate across platforms, and define what the metaverse looks and feels like on mobile. The more we learn together, the better our shared world becomes.

Where to share:

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.