LittleJS Engine Settings
- All settings for the engine are here
- Source
Members
(static) cameraAngle :number
Rotation angle of camera in world space
- number
- Source
(static) cameraPos :Vector2
Position of camera in world space
- Vector2
- Default Value
- Vector2()
- Source
(static) cameraScale :number
Scale of camera in world space
- number
- Default Value
- 32
- Source
(static) canvasClearColor :Color
Color to clear the canvas to before render, does not clear if alpha is 0
- Color
- Source
(static) canvasColorTiles :boolean
Enable applying color to tiles when using canvas2d
- This is slower but should be the same as WebGL rendering
- boolean
- Default Value
- true
- Source
(static) canvasFixedSize :Vector2
Fixed size of the canvas, if enabled canvas size never changes
- you may also need to set mainCanvasSize if using screen space coords in startup
- Vector2
- Default Value
- Vector2()
- Source
(static) canvasMaxAspect :number
Maximum aspect ratio of the canvas (width/height), unused if 0 Can be used with canvasMinAspect to limit aspect ratio
- number
- Source
(static) canvasMaxSize :Vector2
The max size of the canvas, centered if window is larger
- Vector2
- Default Value
- Vector2(1920,1080)
- Source
(static) canvasMinAspect :number
Minimum aspect ratio of the canvas (width/height), unused if 0 Can be used with canvasMaxAspect to limit aspect ratio
- number
- Source
(static) canvasPixelRatio :number|undefined
Scale factor applied to the canvas backing store for native-resolution rendering. Pass 1 for no scaling, a number for an explicit ratio, or undefined to track devicePixelRatio each frame.
- number |
undefined
- Default Value
- 1
- Source
(static) canvasPixelated :boolean
Use nearest canvas scaling for more pixelated look
- If enabled sets css image-rendering:pixelated
- boolean
- Source
(static) enablePhysicsSolver :boolean
Enable physics solver for collisions between objects
- boolean
- Default Value
- true
- Source
(static) engineManualStep :boolean
Disables the automatic requestAnimationFrame loop so the engine only advances when engineStep is called, for tests and frame-stepping tools
- boolean
- Source
(static) fontDefault :string
Default font used for text rendering
- string
- Default Value
- arial
- Source
(static) gamepadAxisFilterEnable :boolean
If true, axes that do not rest near center are ignored on gamepads without standard mapping. Steering wheels and flight sticks report pedal and throttle axes that rest at full deflection, which otherwise reads as a stick held down.
- boolean
- Default Value
- true
- Source
(static) gamepadDirectionEmulateStick :boolean
If true, the dpad input is also routed to the left analog stick (for better accessibility)
- boolean
- Default Value
- true
- Source
(static) gamepadsEnable :boolean
Should gamepads be allowed
- boolean
- Default Value
- true
- Source
(static) glCircleSides :number
How many sided poly to use when drawing circles and ellipses with WebGL
- number
- Default Value
- 32
- Source
(static) glEnable :boolean
Enable WebGL accelerated rendering
- boolean
- Default Value
- true
- Source
(static) gravity :Vector2
How much gravity to apply to objects, negative Y is down
- Vector2
- Source
(static) headlessMode :boolean
Disables all rendering, audio, and input for servers
- boolean
- Source
(static) inputWASDEmulateDirection :boolean
If true the WASD keys are also routed to the direction keys (for better accessibility)
- boolean
- Default Value
- true
- Source
(static) medalDisplaySize :Vector2
Size of medal display
- Vector2
- Default Value
- Vector2(640,80)
- Source
(static) medalDisplaySlideTime :number
How quickly to slide on/off medals in seconds
- number
- Default Value
- 0.5
- Source
(static) medalDisplayTime :number
How long to show medals for in seconds
- number
- Default Value
- 5
- Source
(static) medalsPreventUnlock :boolean
Set to stop medals from being unlockable (like if cheats are enabled)
- boolean
- Source
(static) objectDefaultAngleDamping :number
How much to slow angular velocity each frame (0-1)
- number
- Default Value
- 1
- Source
(static) objectDefaultDamping :number
How much to slow velocity by each frame (0-1)
- number
- Default Value
- 1
- Source
(static) objectDefaultFriction :number
How much to slow when touching (0-1)
- number
- Default Value
- 0.8
- Source
(static) objectDefaultMass :number
Default object mass for collision calculations (how heavy objects are)
- number
- Default Value
- 1
- Source
(static) objectDefaultRestitution :number
How much to bounce when a collision occurs (0-1)
- number
- Source
(static) objectMaxSpeed :number
Clamp max speed to avoid fast objects missing collisions
- number
- Default Value
- 1
- Source
(static) particleEmitRateScale :number
Scales emit rate of particles, useful for low graphics mode (0 disables particle emitters)
- number
- Default Value
- 1
- Source
(static) showSplashScreen :boolean
Enable to show the LittleJS splash screen on startup
- boolean
- Source
(static) soundDefaultRange :number
Default range where sound no longer plays
- number
- Default Value
- 40
- Source
(static) soundDefaultTaper :number
Default range percent to start tapering off sound (0-1)
- number
- Default Value
- 0.7
- Source
(static) soundEnable :boolean
All audio code can be disabled and removed from build
- boolean
- Default Value
- true
- Source
(static) soundVolume :number
Volume scale to apply to all sound, music and speech Use setSoundVolume to also update the audio master gain immediately
- number
- Default Value
- 0.3
- Source
(static) textureSheetPadding :number
Default padding pixels around each frame packed by loadSprite
- number
- Default Value
- 1
- Source
(static) textureSheetSize :number
Width and height in pixels of texture sheets created by loadSprite
- number
- Default Value
- 2048
- Source
(static) tileDefaultBleed :number
Default amount of pixels smaller to draw tiles to prevent neighbor bleeding
- number
- Source
(static) tileDefaultPadding :number
Default padding pixels around tiles
- number
- Source
(static) tileDefaultSize :Vector2
Default size of tiles in pixels
- Vector2
- Default Value
- Vector2(16,16)
- Source
(static) tilesPixelated :boolean
Disables texture filtering for crisper pixel art
- Leave true for pixel art so sprites stay sharp when scaled (uses NEAREST filtering)
- Set false for smooth/high-resolution art to enable bilinear filtering and mipmaps
- boolean
- Default Value
- true
- Source
(static) timeScale :number
Scale applied to engine time, can be used for slow motion or fast forward
- 1 is normal speed, 2 is double speed, 0.5 is half speed
- 0 freezes the simulation without setting the paused flag
- Should be >= 0; stacks multiplicatively with the debug +/- shortcut
- number
- Default Value
- 1
- Source
(static) touchGamepadAlpha :number
Transparency of touch gamepad overlay
- number
- Default Value
- 0.3
- Source
(static) touchGamepadAnalog :boolean
True if touch gamepad should be analog stick or false to use if 8 way dpad
- boolean
- Default Value
- true
- Source
(static) touchGamepadButtonCount :number
Number of buttons on the right side of the touch gamepad (0-4), using gamepad buttons 0-3
- A count of 1 is a single large button (the size of a stick)
- Ignored when touchGamepadRightStick is set (the right side is a stick instead)
- number
- Default Value
- 4
- Source
(static) touchGamepadCenterButtonSize :number
Size of center button if touch gamepad should have start button in the center
- Prevents activating when pressed near virtual stick or face buttons
- When the game is paused, any touch will press the button
- Measured in viewport CSS pixels
- number
- Source
(static) touchGamepadDisplayTime :number
How long to display the touch gamepad on screen in seconds, set to 0 to always display
- number
- Default Value
- 3
- Source
(static) touchGamepadEnable :boolean
True if touch gamepad should appear on mobile devices
- Supports left analog stick, 4 face buttons and start button (button 9)
- setTouchGamepadButtonCount(1) to use face buttons as right analog stick
- Analog stick buttons 10 and 11 are also activated when virtual sticks are touched
- Rendered as a full-viewport HTML/SVG overlay, so controls may sit outside the game canvas
- boolean
- Source
(static) touchGamepadFloating :boolean
True if touch gamepad directional controls should float to where you press
- Only affects analog sticks and dpads, not face buttons
- Directional controls re-anchor to where you press within the bottom ~60% of their screen half; the top ~40% passes through to the game
- The right side floats only when it acts as the right analog stick (touchGamepadRightStick is set)
- A center button (touchGamepadCenterButtonSize) still works since it ignores touches near the sticks
- boolean
- Source
(static) touchGamepadLeftButtonCount :number
Number of buttons on the left side of the touch gamepad (0-4), using gamepad buttons 4-7
- Only used when touchGamepadLeftStick is false (otherwise the left side is a stick)
- A count of 1 is a single large button (the size of a stick)
- number
- Source
(static) touchGamepadLeftStick :boolean
True if the touch gamepad should have a left analog stick (or dpad)
- When false, the left side is face buttons (touchGamepadLeftButtonCount) or nothing
- boolean
- Default Value
- true
- Source
(static) touchGamepadPassthrough :boolean
True if touches outside the gamepad controls should still drive mouse/touch input
- When false (the default), enabling the touch gamepad suppresses touch-to-mouse input entirely
- Set true to also pass touches outside the controls through to the game as mouse/touch input
- Touches on the gamepad controls never drive the mouse regardless of this setting
- boolean
- Source
(static) touchGamepadRightStick :boolean
True if the touch gamepad right side should be an analog stick (or dpad) instead of face buttons
- When set, touchGamepadButtonCount is ignored and the right side is a stick
- Uses an analog stick when touchGamepadAnalog is true, otherwise an 8 way dpad
- boolean
- Source
(static) touchGamepadSize :number
Size of virtual gamepad for touch devices in viewport CSS pixels
- number
- Default Value
- 100
- Source
(static) touchGamepadVibration :number
Duration in ms to vibrate when a touch gamepad face button or start button is pressed
- Set to 0 to disable, also requires vibrateEnable and hardware support (ignored on iOS)
- number
- Source
(static) touchInputEnable :boolean
True if touch input is enabled for mobile devices
- Touch events will be routed to mouse events
- boolean
- Default Value
- true
- Source
(static) vibrateEnable :boolean
Allow vibration hardware if it exists
- boolean
- Default Value
- true
- Source
Methods
(static) setCameraAngle(angle)
Set angle of camera in world space
| Name | Type | Description |
|---|---|---|
angle | number |
- Source
(static) setCameraPos(pos)
Set position of camera in world space
| Name | Type | Description |
|---|---|---|
pos | Vector2 |
- Source
(static) setCameraScale(scale)
Set scale of camera in world space
| Name | Type | Description |
|---|---|---|
scale | number |
- Source
(static) setCanvasClearColor(color)
Set color to clear the canvas to before render, does not clear if alpha is 0
| Name | Type | Description |
|---|---|---|
color | Color |
- Source
(static) setCanvasColorTiles(colorTiles)
Set if tiles should be colorized when using canvas2d This can be slower but results should look nearly identical to WebGL rendering It can be enabled/disabled at any time Optimized for performance, and will use faster method if color is white or untextured
| Name | Type | Description |
|---|---|---|
colorTiles | boolean |
- Source
(static) setCanvasFixedSize(size)
Set fixed size of the canvas
| Name | Type | Description |
|---|---|---|
size | Vector2 |
- Source
(static) setCanvasMaxAspect(aspect)
Set maximum aspect ratio of the canvas (width/height), unused if 0
| Name | Type | Description |
|---|---|---|
aspect | number |
- Source
(static) setCanvasMaxSize(size)
Set max size of the canvas
| Name | Type | Description |
|---|---|---|
size | Vector2 |
- Source
(static) setCanvasMinAspect(aspect)
Set minimum aspect ratio of the canvas (width/height), unused if 0
| Name | Type | Description |
|---|---|---|
aspect | number |
- Source
(static) setCanvasPixelRatio(pixelRatioopt)
Set the canvas pixel ratio. Pass a number for an explicit ratio, or call with no argument to track devicePixelRatio each frame.
| Name | Type | Attributes | Description |
|---|---|---|---|
pixelRatio | number | <optional> |
- Source
(static) setCanvasPixelated(pixelated)
Use nearest scaling algorithm for canvas for more pixelated look
| Name | Type | Description |
|---|---|---|
pixelated | boolean |
- Source
(static) setEnablePhysicsSolver(enable)
Set if collisions between objects are enabled
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setEngineManualStep(enableopt)
Set if the engine only advances when engineStep is called Must be set before engineInit
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
enable | boolean | <optional> | true |
- Source
(static) setFontDefault(font)
Set default font used for text rendering
| Name | Type | Description |
|---|---|---|
font | string |
- Source
(static) setGLCircleSides(sides)
Set how many sided polygons to use when drawing circles and ellipses with WebGL
| Name | Type | Description |
|---|---|---|
sides | number |
- Source
(static) setGLEnable(enable)
Set if WebGL rendering is enabled
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setGamepadAxisFilterEnable(enable)
Set if axes that do not rest near center are ignored on non-standard gamepads
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setGamepadDirectionEmulateStick(enable)
Set if the dpad input is also routed to the left analog stick
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setGamepadsEnable(enable)
Set if gamepads are enabled
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setGravity(newGravity)
Set how much gravity to apply to objects
| Name | Type | Description |
|---|---|---|
newGravity | Vector2 |
- Source
(static) setHeadlessMode(headless)
Set to disable rendering, audio, and input for servers
| Name | Type | Description |
|---|---|---|
headless | boolean |
- Source
(static) setInputWASDEmulateDirection(enable)
Set if true the WASD keys are also routed to the direction keys
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setMedalDisplaySize(size)
Set size of medal display
| Name | Type | Description |
|---|---|---|
size | Vector2 |
- Source
(static) setMedalDisplaySlideTime(time)
Set how quickly to slide on/off medals in seconds
| Name | Type | Description |
|---|---|---|
time | number |
- Source
(static) setMedalDisplayTime(time)
Set how long to show medals for in seconds
| Name | Type | Description |
|---|---|---|
time | number |
- Source
(static) setMedalsPreventUnlock(preventUnlock)
Set to stop medals from being unlockable
| Name | Type | Description |
|---|---|---|
preventUnlock | boolean |
- Source
(static) setObjectDefaultAngleDamping(damp)
Set how much to slow angular velocity each frame
| Name | Type | Description |
|---|---|---|
damp | number |
- Source
(static) setObjectDefaultDamping(damp)
Set how much to slow velocity by each frame
| Name | Type | Description |
|---|---|---|
damp | number |
- Source
(static) setObjectDefaultFriction(friction)
Set how much to slow when touching
| Name | Type | Description |
|---|---|---|
friction | number |
- Source
(static) setObjectDefaultMass(mass)
Set default object mass for collision calculations
| Name | Type | Description |
|---|---|---|
mass | number |
- Source
(static) setObjectDefaultRestitution(restitution)
Set how much to bounce when a collision occurs
| Name | Type | Description |
|---|---|---|
restitution | number |
- Source
(static) setObjectMaxSpeed(speed)
Set max speed to avoid fast objects missing collisions
| Name | Type | Description |
|---|---|---|
speed | number |
- Source
(static) setParticleEmitRateScale(scale)
Set to scales emit rate of particles
| Name | Type | Description |
|---|---|---|
scale | number |
- Source
(static) setShowSplashScreen(show)
Set if the LittleJS splash screen should be shown on startup
| Name | Type | Description |
|---|---|---|
show | boolean |
- Source
(static) setSoundDefaultRange(range)
Set default range where sound no longer plays
| Name | Type | Description |
|---|---|---|
range | number |
- Source
(static) setSoundDefaultTaper(taper)
Set default range percent to start tapering off sound
| Name | Type | Description |
|---|---|---|
taper | number |
- Source
(static) setSoundEnable(enable)
Set to disable all audio code
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setSoundVolume(volume)
Set volume scale to apply to all sound, music and speech
| Name | Type | Description |
|---|---|---|
volume | number |
- Source
(static) setTextureSheetPadding(padding)
Set default padding pixels around each frame packed by loadSprite
| Name | Type | Description |
|---|---|---|
padding | number |
- Source
(static) setTextureSheetSize(size)
Set width and height in pixels of texture sheets created by loadSprite
| Name | Type | Description |
|---|---|---|
size | number |
- Source
(static) setTileDefaultBleed(bleed)
Default amount of pixels smaller to draw tiles to prevent neighbor bleeding
| Name | Type | Description |
|---|---|---|
bleed | number |
- Source
(static) setTileDefaultPadding(padding)
Default padding pixels around tiles
| Name | Type | Description |
|---|---|---|
padding | number |
- Source
(static) setTileDefaultSize(size)
Set default size of tiles in pixels
| Name | Type | Description |
|---|---|---|
size | Vector2 |
- Source
(static) setTilesPixelated(pixelated)
Disables texture filtering for crisper pixel art
- Leave true for pixel art; set false for smooth/high-resolution art
| Name | Type | Description |
|---|---|---|
pixelated | boolean |
- Source
(static) setTimeScale(scale)
Set scale applied to engine time
| Name | Type | Description |
|---|---|---|
scale | number |
- Source
(static) setTouchGamepadAlpha(alpha)
Set transparency of touch gamepad overlay
| Name | Type | Description |
|---|---|---|
alpha | number |
- Source
(static) setTouchGamepadAnalog(analog)
Set if touch gamepad should be analog stick or 8 way dpad
| Name | Type | Description |
|---|---|---|
analog | boolean |
- Source
(static) setTouchGamepadButtonCount(count)
Set number of buttons on the right side of the touch gamepad (0-4, gamepad buttons 0-3)
| Name | Type | Description |
|---|---|---|
count | number |
- Source
(static) setTouchGamepadCenterButtonSize(size)
Set if touch gamepad should have start button in the center
- Set size to enable the center button
- When the game is paused, any touch will press the button
| Name | Type | Description |
|---|---|---|
size | number |
- Source
(static) setTouchGamepadDisplayTime(time)
Set how long to display the touch gamepad on screen in seconds, set to 0 to always display
| Name | Type | Description |
|---|---|---|
time | number |
- Source
(static) setTouchGamepadEnable(enable)
Set if touch gamepad should appear on mobile devices
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setTouchGamepadFloating(floating)
Set if touch gamepad directional controls should float to where you press
| Name | Type | Description |
|---|---|---|
floating | boolean |
- Source
(static) setTouchGamepadLeftButtonCount(count)
Set number of buttons on the left side of the touch gamepad (0-4, gamepad buttons 4-7)
- Only used when touchGamepadLeftStick is false
| Name | Type | Description |
|---|---|---|
count | number |
- Source
(static) setTouchGamepadLeftStick(enable)
Set if the touch gamepad should have a left analog stick (or dpad)
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setTouchGamepadPassthrough(passthrough)
Set if touches outside the gamepad controls should still drive mouse/touch input
| Name | Type | Description |
|---|---|---|
passthrough | boolean |
- Source
(static) setTouchGamepadRightStick(rightStick)
Set if the touch gamepad right side is an analog stick (or dpad) instead of face buttons
| Name | Type | Description |
|---|---|---|
rightStick | boolean |
- Source
(static) setTouchGamepadSize(size)
Set size of virtual gamepad for touch devices in pixels
| Name | Type | Description |
|---|---|---|
size | number |
- Source
(static) setTouchGamepadVibration(ms)
Set duration in ms to vibrate when a touch gamepad face or start button is pressed (0 disables)
| Name | Type | Description |
|---|---|---|
ms | number |
- Source
(static) setTouchInputEnable(enable)
Set if touch input is allowed
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source
(static) setVibrateEnable(enable)
Set to allow vibration hardware if it exists
| Name | Type | Description |
|---|---|---|
enable | boolean |
- Source