Few gamers have not heard of Steam. The first appearance of the site falls already in 2002. On it large publishers could safely distribute games. A dozen years later, Steam Greenlight appeared, which made it possible to get to the site not only for large studios, but also for ordinary indie developers. Users themselves chose which games they want to see on the site. But due to the emergence of a mass of second-rate games, such a system had to be closed. Direct has replaced Greenlight. According to the developers, such a system should make the publishing process orderly, transparent and accessible to new developers from around the world. For…
-
-
Interesting projects: mathematical C library for developing video games
The MATHC project is a collection of objects for developing 2D and 3D games.Today we will take a look at the MATHC project. At its core, it is a simple math library that can be used to develop 2D and 3D games. It contains realizations of the following mathematical objects in pure C: 2D and 3D vectors;quaternions;matrices;smoothness functions.Object implementations support both the C99 standard and newer ones. Float typeEach structure and function of the library uses a float type, since this data type is used in most of the development of 2D and 3D games using OpenGL. Passing by value or by pointerFor functions that accept structures as parameters, there…
-
About Vectors
All vectors (2D, 3D and quaternions) are in the form of structures of type struct vec. Note that the z component can be used for 2D vectors as well, since it is used in OpenGL to check depth. The w component is used only to describe the quaternion. / * Flip the 2D vector 90ยบ * /struct vec direction = to_vector2 (0.0f, -1.0f);direction = vector2_rotate (90.0f * M_PIF / 180.0f); / * Get the slope in radians for the 2D vector * /float angle = vector2_angle (direction); / * Create a 3D vector * /struct vec position = to_vector3 (0.0f, 0.0f, 0.0f); / * Create quaternion * /struct vec quaternion…





