Default Assets

HYTOPIA provides a wide variety of defaults assets. This includes pre-made audio, block textures, maps, skyboxes, models, and more.

When you start your HYTOPIA project by following the Initial Setupexample, your project will add the @hytopia.com/assets package to your project. Your game server when ran will automatically recognize this package & its directory in node_modules/@hytopia.com/assets as containing the default available assets, which you are free to use in your game however you'd like.

These assets can then be referenced in the same way as assets in your own project's assetsfolder. When your game is ran, the contents of the assetsfolder and @hytopia.com/assetare internally merged and server by the webserver.

So, to access a model from the HYTOPIA assets that exists at node_modules/@hytopia.com/assets/models/npcs/zombie.gltfwhen creating an Entity for example, models/npcs/zombie.gltf becomes the resolved model uri for the Entity constructor.

You can find the latest assets available at anytime in the HYTOPIA assets package on NPM, here.

Assets Folder Structure

The HYTOPIA assets folder structure categories game assets based on their purpose.

/models - Contains .glTF models categorized by type.
  • players

  • npcs

  • environment

  • projectiles

  • structures

  • items

  • particles

  • misc

/blocks - Contains block images (single texture) & folders (multi texture).
  • <block texture>.png

  • or <Block Name> / <6 different face textures, -x.png, +x.png, -y.png, +y.png, -z.png, +z.png>

/skyboxes - Contains skyboxes categorized by style.

<skybox descriptive name>/ <6 face textures, -x.png, +x.png, -y.png, +y.png, -z.png, +z.png>

/audio - Contains music and sound effects in .mp3 format.
  • sfx

  • music

/maps - Contains default map file.
  • boilerplate.json

Asset Terminology

  • Entity - A non-block game object such as an NPC, an interactable Chest, a Door, etc.

    • Example. Zombie, Pig, Chest, Door, Booster Pad, Portal.

  • Misc - A misc. asset that would be outside of the bounds of the other categories.

    • Example: A muzzle-flash from a gun, footstep marks on ground, bullet hole.

  • Item - A player-held object.

    • Example: Sword, Axe, Pickaxe, Shield, Fishing Rod, Potion.

  • Block - A voxel cube that makes up the world’s terrain.

    • Example: Dirt, Wood, Sand, Grass, Stone, Iron, Gold.

  • Sound - Any sound related asset such as music and effects.

    • Example: Theme Song, Sword Clash, Punch Hit, Level Up Noise, Ambient weather.

  • Particle - Textures/.glTF objects intended to be used as particle effects. Often rendered as a plane (billboard) in 3D space.

    • Example: Smoke, Dust, Sparks, Fire.

  • Projectile - Objects intended to be used as projectiles.

    • Examples: Arrows, Lasers, Fireballs, Bullets, Flying Rocks.

  • Environment - Assets intended to be used for environmental detail / visual enhancements.

    • Examples: Rocks, grasses, flowers, swarms of bugs, rubble.

  • Structure - Non-block assets that make up structures within the environment

    • Examples: Fences, Light Poles, Signs.

  • UI - Any asset intended to be used in the UI.

    • Examples: Icons, Images, Backgrounds, Fonts.

Last updated