Object is either two dimensional, or three dimensional. Even abstract
ones. People imagine c++ game objects as a part of a class on a graph
chart, to understand the game and development mechanics. But they
are really two dimensional, iso metric or three dimensional. They can
be seen on the level or the level map, in other words, about 90% of
used classes. Even server objects can be seen on the game, if there is
any blue print or underlying real world net working mechanism. So in
other words, the class objects can be used in game. They have to be
dimensional.
//PvE
class Monster
{
std::vector<int> head_memory{};
std::vector<int> body_particles{};
public:
int get_memory(int element);
int get_particles(int element);
int get_head_memory_size();;
int get_body_particles_size();
};
Monster's head memory is used for AI render, the body particles list
is used for rendering. 60 frames per second is more than optimal on
all platforms, and is good for portability, including Steam.
//trigonometry
void render_AI_path(Monster& monster)
{
for (int element{1}; element<=monster.get_memory(monster.get_head_memory_size();;++element)
{
save_ai(monster_get_memory(element));
}
}
void render_object(Monster& monster)
{
for (int element{1}; element<=monster.get_particles(monster.get_body_particles_memory_size();;++element)
{
render(monster.get_particles(element);
}
}
Specific rendering:
void render_object(Monster& monster);
void render_object(Player& player);
Two dimensional object:
void render_object(Monster& monster)
{ render_pixels(monster.get_particles(monster_current_x()),monster.get_particles(monster_current_y() ;
}
Isometric object:
void render_object(Monster& monster)
{
render_pixels(monster.get_particles(isometric_x()),monster.get_particles(isometric_y() ;
}
Three dimensional object:
void render_object(Monster& monster)
{
render_vector(monster);;
}
void render_vector(Monster & monster)
{
system.draw(basic, monster);
windows.draw(object, monster);
print(object, axis, monster);
}
Comments
Post a Comment