User Tools

Site Tools


Sidebar

hpl3:game:guides:artists_guide

Artist's Guide

Player Character Information

Information regarding the player controlled character to guide for appropriate dimensions.

Player Size

  • Width: 70 cm
  • Height standing: 190 cm
  • Height crouching: 120 cm
  • Eye (camera) position: 10 cm below height.

Level Information

Measurements

The following measurements are good if kept and all models created should assume them. However, they are not set it stone and can be broken if really needed. However, do not go crazy and use other measures for the fun of it, break them only if really needed. For example, if there is to be a hole in a wall for the player to crawl through it might look silly with a 0.25 meters thick wall, and you want to ramp up to 0.5 or even 0.75 to make it look good.

General

Wall thickness: 0.25m
Ceiling thickness 0.25m

Doorways

The size of the doorway (ie the hole in the wall that it is placed in) depend on what kind of door it is. For doors that are swingdoors (ie normal doors on hinges) and/or are meant be be used in a realistic real-life environment then a certain set of measurements. This type is called “realistic”. If the door is meant to be used in more sci-fi setting or that the doors themselves are not ordinary, then another set of messurements is used. This type is called “fantastic”.

Realistic: 1.5m x 2.5m
Fantastic: 1.75m x 2.75m

Doors & Frames

The doors should be smaller than the doorframe hole, but be careful not to overdo this. The rest of the hole space is filled up by the frame (see below).
Standard size: 1.3m x 2.45m (this is what looks best for a normal realistic door)
Minimum size: 1.1m x 2.3m (this is so that AI will always fit).

The frames of the doors can be whatever you like, the only thing necessary is that they fill up the hole so if the door were to removed the walls are not visible.

Characters

When creating a characters for depth there are some things that need to be kept in mind.

Basics

This are some general points that apply to any kind of character.

  • Areas where the character will most likely bend should have extra polygons for smoother deformation. Example: Knees, elbows, wrists.
  • Never do any textur mirroring or similar. Every pixel on the rendered character should be a unique texture pixel.
  • Unlimited number of bones are supported. But it would be best to keep below 256

Humanlike

This include any character that has a human like appearance and features. Basically any character that might be in need of facial animations.

General

  • Clothing and accessories like watches should be a part of the mesh. We dont want body parts sticking out of clothes.
  • Spend polygon budget wisely. Example: If the character has a baseball cap make sure it is smooth as the silhouette will be very noticable. Also have more polygon density on the head then the body.
  • All skin surfaces must be seperate texture

Face

  • The face shall always be a separate texture/material.
  • A good idea is to split the head texture where the neck meets the shirt line, to try and keep it as seamless as possible.
  • If there is any amount of facial hair (very large beard or any haircut more than very bold), hair must have a separate texture.
  • Eyes need to be separate submeshes and also have their own textures.
  • Make sure there is enough mesh for the pupil to get to every corner of the eye.
  • Eyelids should be able to open and close.
  • Mouth need to be able to open, have teeth, toungue and uvula
  • The facial rig should allow exaggerated poses (if we were to have animations to be seen at a distance)
  • The inside of nostrils must be modeled

Entities

Entities are all objects that can be (but do not have to be) dynamic and will always have an .ent file. The ent-file always include a model file but can also include lights, physics, sounds, animations and more. These make up the foreground of the game.

What is an entity?

It should not hard to identify what should be an entity, but sometimes the object you have in mind is made up out of one or several entities. The easiest rule of thumb to have is that an entity only serves a single purpose and allows for a single coordinated movement. For example, if you have a door with a scanner, and lamp above, it and a cog wheels that turn when the door move, this is NOT a single entity instead this would be split into four different. These would be:

  • Door (and frame)
  • Scanner
  • Lamp
  • Cogwheel

Each of these serves a single purpose, the door can be opened, the scanner can be interacted with (and light up/down), the lamp can be turned on/off and the cogwheel can spin or stand still. All of these require different controls and thus need to be made into different entities. Another example (which is different from how Amnesia worked) would be a desk of drawers, here there would actually be two different entities. One for the frame and one for each drawer. The reason is that each drawer has its own movement to be controlled, and thus require a single entity for each drawer the desk contains. If the desk had only contained a single drawer the drawer and frame would be one single entity!

Do NOT take this this thinking too far though. For example if a machine has lots of lights that light up when it starts working, and no other moving parts, then DO NOT make this into two entities, one lamp and one machine. Because the lamp and machine work in unison (lights light up when the machine start) there is no need to split them up! As always, if unsure, ask someone else (this makes it possible to put the blame on another person ;))

Categories

First of all, entities needs to be placed in the main category that they belong to. This is can be “creatures”, “organic” or a category for a specific type of environment in the game, e.g. “shipwreck”. All main categories then have sub categories that the individual entity folders are placed and for most categories these vary a lot. However for the environmental categories (like “shipwreck”) there is a certain basic system:

What follows is a list of the most common categories of entities:

“lamps”
Everything that emits light and can be turned on and off.

“furniture”
Stuff like sofa, tables, chairs, etc are placed here. Most stuff you see at Ikea is found here.

“ornaments”
This entails any kind of objects explicitly used to spice up the room. Vases, statues, books, etc belong here. This is NOT anything you think will spice up a room, but something the virtual/fictional owners have placed to do so.

“ornaments_wall”
Just like ornaments but everything that belongs on a wall. Posters, paintings, mirror, etc are in here.

“machines”
Anything that does some kind of mechanical process is in here. Diesel engine, pneumatic press, etc are here.

“tech”
All electronic gadgets go here: computers, speakers, radios, etc.

“panels”
Screens hat can be interacted with. E.g. hand scanners, eye scanners, touch screens, etc.

“gameplay”
Simple things that the player can physically interact with, which includes buttons, switches, levers, wheels, etc. This also any special object used for gameplay purposes, for instance woodboards the player can pry of a window or a special bridge that comes out of a wall. If it is used for gameplay, and do is not really fitting in another category it belongs here!

“storage”
Inventories you would find in a warehouse or storage room. Barrels, crates, boxes and shit.

“tools”
Any common (or perhaps uncommon) useful tools go here. Scissor, hammer, screwdriver, fire extinguisher, buzz saw, etc

“utility”
Things that are sort of “attached” to the environment and serve direct specfic physical usage. Examples: sprinkler, electrical outlet, ventilation, etc

“organic”
Flowers, corpses, gibs, etc. Anything like that.

“debris”
Non-useable static junk for the floor. stones, plaster, cloth, paper, etc.

“support”
Things that cannot really stand on their own and have many uses. Planks, girders, steel bars, beams, stretch of rope, etc. Anything that you use together with the environment and very seldom by itself. Important note: Much of this should probably be in static objects, so only use it here if it has lots of polys or a need to by dynamic.

“edibles”
Anything that can be consumed, water bottle, food, medicine, etc.

“doodad”
complex stuff that does not serve any purpose other than spicing up the environment. Important is that it is complex enough that it should not be in static objects.

These are of course not the only categories available but should give a good start. If adding categories, do NOT add to specific ones like “red herrings” or have two categories that could contain the same entities, like “food” and “groceries”.

Naming

When naming entities the main rule is to make it easy for other people to easily find objects when editing. In order to do so make sure not to be to general and to name things in order of descending importance. Something like this:

[type of object]_[object name]_[attributes]

Examples: “computer_laptop_broken”, “table_dining_room_wood_large”

Make sure to be consistent in this type of naming, so that you do not have several different names for the same type of object. For example, do NOT begin some names with “pc”, some with “computer”, some with “terminal”, etc. Instead begin all entity names with a single name, like “computer_” instead!

You do not need to be all to specific in this kind of naming, so do NOT have names like: “computer_linux_red_hat_networked_600gb_ram_white”!!!
But do NOT be too unspecfic either and name something “computer_small” either!

Type Specifics

Slide Door

When making a slider door make sure that the opening is always along the Z-axis (that is any character would go through the door along the z-axis).

Swing Door

Make sure that the door opens in the postive Z direction. That is when the door swings open it will travel down a postive z axis.

Shapes, bodies & Collisions

Shapes are used to create bodies which in turn are used to give entities all their physical properties.

Shapes

Shapes can consist of the following shapes:

  • Box
  • Capsule
  • Cylinder
  • Sphere

Sphere is the fastest (as in takes the least amount of processing power), followed by capsule, cylinder and finally the box is the slowest.

Bodies

Bodies are created from one or several shapes. Bodies contain the actual properties for weight, collisions and so forth. It is to bodies that you attach models, lights, sound etc which results in the final entity.

For all bodies make sure to, AT THE VERY LEAST, configure:

  • Body Material, this sets what sound, particle and physical behavior the body will have. For example, set it to Metal, and it will clank and show a spark on impact, and the entitiy will have less friction than if it were set to for example dirt.
  • Mass, set this to something realistic (in kg), setting it to 0 will make any type of entity static.
  • Max Linear & Angular Speed, a value of 8 to 16 seems to let entities move fast, but not get out of hand. Tip of the day: This can be used to fake air resistance by using a very low value.

Creating Bodies for Collision

When configuring the bodies to be proper colliders for entities there is basically one goal: To use as few and simple shapes as possible to create an as accurate as possible body (or bodies) for collsions.

Some general rules:

  • Don't create a body that has too great of a difference for the values of x, y, z. For example creating a very thin box to be a collider for a piece of paper is a bad idea if the paper is going to be dynamic, it will behave strangely and can even fall through the floor.
  • Use a mix of bodies that have character collide, none character collide and both. For example a table, should have character collide turned off on all bodies that does the actual colliding for the table shape against other entities. Then one single body should enclose the whole table, with character collide turned on
    hpl3/game/guides/artists_guide.txt · Last modified: 2015/02/17 14:16 by nebej