Skip to main content

What does a good game consist of? (part 15)

Lesson in physics

I think distinction of whether game physics will be real or fantasy/sci-fi is an important to make.
This is in my opinion an important aspect of a good game.


Either way gravity is a law of gravity you just have to understand and same goes formula.
It's good if you know about friction, fraction, quantum physics, and most importantly, even relativity of time, and electricity works.

Gravity is important in space games as well.

How much do you remember of this from high-school? Either way if you remember a good deal or not, this is an important reason why you should Wikipedia and Google for thorough research on math, chemistry, physics, literature, art, music and poetry.

This is the lesson I tried to get across: research your problems and you'll have much better chances at making a game. That and if you're still in school/college, don't cheat at tests and actually listen to the professor: so keep learning, no matter how much you have mastered something.

A good game is the one which teaches of many different areas of life. And being a learner gives you a good chance of making the game lesson-giving.

To conclude, physics teach us how the universe works. Also for you to be a life-long learner

Comments

Popular posts from this blog

object oriented programming

Object oriented programming is a sound and bold approach to c++ and internet wiring application and video games. It reduces a lot of code messes, made by global and half global functions. One of the more advanced object programming techniques are private access, poly morph and object message inheritance. It is set by c++ bjarne stroustrup and iso isometric standard convention comitee to use classes instead of structs and structures for making objects. Which means you most definitely should , but not must or have to. class Monster {     std::string memory_attributes{}; public:     void treck();     void track();     void trace(); }; The treck() function makes the monster roam and do human like jogging and trimming. track() means the monster goes ai path tracking and trace() means it tries to find other monsters in the area. class Weapon {     std::string memory_attributes{}; public:    void use(); }; void Weapon::use() {   ...

object render, part 4

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...

object render, part 3

 Making a object requires a class call, but also has to be rendered. Monster monster{}; monster = new Monster[10]; void render_monster(Monster* monster_array); The iso c++ standard says you should use classes for making objects, not structs(structures). Considering it is a standard.  With emphasis on  should , not  must . It is a standard, not a coding rule. It was set forth by iso commitee and bjarne stroustrup. Polymorphism allows us to make multiple monster arch map types. virtual void render_monster(std::string map_name, int type=0); Atch map is a data map about what all is happening in the game, like for example campaign map. It allows making archetypes. monsters, for more efficient run time memory and pointers managing bugs and random access memory. Random access memory can hold quite many objects. class BackPack {     std::string inventory_node{}; };