Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

9 Create a Complete New Architecture #10

Draft
wants to merge 32 commits into
base: main
Choose a base branch
from

Conversation

@MasterLaplace MasterLaplace added documentation Improvements or additions to documentation enhancement New feature or request optimizing performance optimization feature labels Oct 17, 2023
@MasterLaplace MasterLaplace self-assigned this Oct 17, 2023
@MasterLaplace MasterLaplace linked an issue Oct 17, 2023 that may be closed by this pull request
6 tasks
@MasterLaplace MasterLaplace force-pushed the 9-create-a-complete-new-architecture branch from 667dbe7 to b4a1296 Compare October 18, 2023 03:17
.github/FUNDING.md Outdated Show resolved Hide resolved
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not tested

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not tested

CHANGELOG.md Outdated
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

need to be fill with the content of the Engine-3D version 0.1.0

@MasterLaplace MasterLaplace added the minor This is a minor feature (increment version) label Oct 19, 2023
@MasterLaplace MasterLaplace marked this pull request as draft October 19, 2023 16:17
@MasterLaplace MasterLaplace temporarily deployed to github-pages October 20, 2023 04:55 — with GitHub Pages Inactive
@MasterLaplace MasterLaplace temporarily deployed to github-pages October 20, 2023 04:58 — with GitHub Pages Inactive
@MasterLaplace MasterLaplace temporarily deployed to github-pages October 20, 2023 04:59 — with GitHub Pages Inactive
@MasterLaplace MasterLaplace temporarily deployed to github-pages October 20, 2023 05:18 — with GitHub Pages Inactive
@MasterLaplace MasterLaplace force-pushed the 9-create-a-complete-new-architecture branch from 85c95fb to 7b23dda Compare October 20, 2023 14:21
@MasterLaplace MasterLaplace force-pushed the 9-create-a-complete-new-architecture branch from a36c45f to 3be09a5 Compare October 22, 2023 15:07
@MasterLaplace MasterLaplace force-pushed the 9-create-a-complete-new-architecture branch from 3be09a5 to 7b23dda Compare October 22, 2023 15:50
Engine/Engine/Event/event.c Show resolved Hide resolved
Engine/Engine/Math/Geometry/triangle.c Show resolved Hide resolved
Engine/Engine/Math/Geometry/triangle.c Show resolved Hide resolved
Comment on lines +13 to +23
matrix4f matrix4_f_mul(matrix4f m, matrix4f n)
{
matrix4f o = MATRIX4F_DEFAULT;

for (unsigned i = 0; i < 4; i++)
for (unsigned j = 0; j < 4; j++)
for (unsigned k = 0; k < 4; k++)
o.m[i][j] += m.m[i][k] * n.m[k][j];

return o;
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you are doing a lot of matrix computation, it may be worth taking a look at a faster algorithm, here is a nice resource

Engine/Engine/Math/Matrix/matrix.c Show resolved Hide resolved
int main(int ac, const char *av[]) {
#endif
// Initialize the game engine and its components.
if (ac != 2) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ac is undefined in windows context?


#ifndef LAPLACE_LIB_H_
#define LAPLACE_LIB_H_
#define auto_clean __attribute__((cleanup(laplace_lib_free)))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

isn't auto_clean only supported by GCC?

////////////////////////////////////////////////////////////
// Define the LAPLACE_LIB version string
////////////////////////////////////////////////////////////
#define LAPLACE_LIB_VERSION_STRING "1.0.0"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can use the glue operator to build the library version string

Suggested change
#define LAPLACE_LIB_VERSION_STRING "1.0.0"
#define CAT(x) #x
#define XCAT(x) CAT(x)
#define LAPLACE_LIB_VERSION_STR \
XCAT(LAPLACE_LIB_VERSION_MAJOR) \
"." XCAT(LAPLACE_LIB_VERSION_MINOR) \
"." XCAT(LAPLACE_LIB_VERSION_PATCH)


inline int laplace_lib_open_file(char const *filepath, unsigned oflag)
{
int fd = open(filepath, oflag);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the file descriptor should be checker prior to the access call

} link_t;

//* It creates a link with the object passed in parameter.
extern link_t *laplace_link_create(void *_new);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are they marked as external symbols?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request minor This is a minor feature (increment version) optimizing performance optimization feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create a Complete New Architecture
3 participants