Viewer Software Overview

From Second Life Wiki
Jump to navigation Jump to search

See Also

Code Overview

Modules

newview

llwindow

  • Contains code for hardware specific abstractions
    • llwindow*.cpp - window management
    • llkeyboard* - keyboard and mouse input
    • llgl*, lldxhardware - OpenGL extensions management and graphics card info queries

llmedia

  • Contains code for turning quicktime and other media sources (e.g. Mozilla) into images

llrender

  • Contains code to abstract low level rendering
    • llvertexprogram - vertex shaders
    • llvertexbuffer - vertex buffer objects
    • llimagegl - OpenGL texture management
    • llfont/llfontgl - fonts

llaudio

  • Audio abstraction (FMOD, OpenAL, Ogg)

llscene

  • Misc files for shared data structures between the viewer and the simulator

llprimitive

  • Primitive to volume tessellation and management
  • Primitive (object) property management

llui

  • User interface library

llinventory

  • Inventory data management

llcharacter

  • Animation

llmessage

  • Message handling library

llvfs

  • Virtual File System (to be deprecated)
  • Local File System (threaded file manager)

llxml

  • XML parser / exporter

llimage

  • Image library (formatted image, e.g jpeg2000 <-> raw image conversion)

llmath

  • Math library

llcommon

  • Data structure and common utility library

Dependencies

  • Modules (should) depend only on modules below them (no cross dependencies!)
  • Steve Linden- Note: This was last verified in 1.6 so cross dependencies may have snuck in since
newview
llwindow llmedia
llrender
llaudio llscene llprimitive llui llinventory llcharacter
llmessage
llvfs llxml llimage
llmath
llcommon