############################################################
january 25, 2025

an early building concept.
a building is an object made up of multiple components:
- floor
  load-bearing walls, square shape.
  floors can be stacked to create multi-storey buildings.
- wall
  refers to the style of the wall.
  (eg wall built with bricks).
  (   uniform architectural style).
  (eg wall built with stones of various shapes and sizes).
  (   irregular architectural style).
- roof
  it is the last component placed on top of the building.
  it can be of various shapes.
  (eg flat shape, pyramid shape, etc.).
- door
  located on the ground floor, leaning against the wall.
  it can be installed in three positions.
  (ie left, center, right).
  it can be placed next to one or more windows.
- window
  located on any floor, leaning against the wall.
  it can be installed in three positions.
  (ie left, center, right).
  it can be placed next to a door.
  it can be placed next to other windows.
this overview is described in a simple way.
each component actually includes multiple models.
buildings can be grouped together to create towns.



############################################################
december 7, 2024


the project has recently been intensively reworked.
in particular:
- new object classification criteria
- new organization of folders and files
- new source code structure
- new avatar version
the appearance of the avatar has changed a lot over time.
from traditional forms to an increasingly conceptual one.
currently the body is divided into three main portions:
- upper portion, head area
- central portion, torso area
- lower portion, leg area
each portion has the same height.
the proportions serve to give the character a look.
the idea, in fact, is to represent a sort of chibi style.
(nb a common style in manga and anime).
in addition to this, the body is divided into parts.
(eg head, torso, hands, feet, etc.).
the quantity of parts was greater previously.
in this prototype it was drastically reduced.
many parts allowed for greater customization.
however, this functionality was excessive.
a simplified approach was therefore adopted.
each part is an independent object.
this allows for more direct management during execution.
this model is not to be considered unique or definitive.
it was designed primarily for design purposes.
further models with different appearances are planned.



############################################################
august 17, 2024


to inaugurate the site, i'll describe an old project.
it's a prototype created in 2021.
the user controls a character that moves in a 3d space.
the 3d space has a very simple composition.
it includes essential elements such as walls and floors.
the space can be inspected via a controllable character.
its movements are done via the computer keyboard.
the camera that frames it, is controlled via the mouse.
there are four main objects.
first, the entity.
the definition of character is preceded by that of entity.
an entity represents, abstractly, any animated being.
(ie a being commonly identified as alive or living).
here details common to all animated beings are defined.
(eg animations, health, status, etc.).
a very important implementation is the collision system.
through this, entities don't penetrate things like walls.
second, the avatar.
is the character controllable by the user.
as it is animated, it derives from the entity object.
it defines horizontal and vertical movements.
(ie horizontal: forward, backward, left, right, diagonal).
(   vertical: jump and fall).
third, the camera.
what frames the avatar and part of the environment.
it therefore allows the user to view a scene.
it is implemented directly with the third-person view.
it defines horizontal and vertical movements.
(ie horizontal: 360 degree view around the avatar).
(   vertical: from the head to the feet of the avatar).
it defines zoom in and zoom out.
it defines the collision system.
(eg camera gets closer to the avatar if it meets solids).
(   solids mainly mean walls and floors).
fourth, the application.
it's basically empty space.
initially, some basic details are defined.
(eg import of instructions needed to start the engine).
(   settings for engine-related features).
(   settings to access folders).
subsequently, the necessary objects are imported.
(eg avatar, camera, environment related things, etc.).
for convenience, environment definition is embedded here.
(eg elements such as floors including hills and slopes).
(   elements such as buildings and bridges).
it also includes details about collisions and updates.



############################################################