Hacker Newsnew | past | comments | ask | show | jobs | submit | nodivbyzero's commentslogin

The Five Demons of Python Packaging That Fuel Our Persistent Nightmare: https://youtu.be/qA7NVwmx3gw?si=QbchrYvCEp8aazvL


There are few HoMM projects on GitHUB. For example: https://github.com/ihhub/fheroes2


Here is the another interesting discussion about `Game Oriented Assembly Lisp` https://news.ycombinator.com/item?id=2090554


Check this out. https://github.com/skypjack/entt

EnTT is a header-only, tiny and easy to use library for game programming and much more written in modern C++. Among others, it's used in Minecraft by Mojang, the ArcGIS Runtime SDKs by Esri and the amazing Ragdoll.


Tiny? In what world is this tiny?

entt.hpp:

#include "config/version.h" #include "core/algorithm.hpp" #include "core/any.hpp" #include "core/attribute.h" #include "core/family.hpp" #include "core/hashed_string.hpp" #include "core/ident.hpp" #include "core/monostate.hpp" #include "core/type_info.hpp" #include "core/type_traits.hpp" #include "core/utility.hpp" #include "entity/component.hpp" #include "entity/entity.hpp" #include "entity/group.hpp" #include "entity/handle.hpp" #include "entity/helper.hpp" #include "entity/observer.hpp" #include "entity/organizer.hpp" #include "entity/poly_storage.hpp" #include "entity/registry.hpp" #include "entity/runtime_view.hpp" #include "entity/snapshot.hpp" #include "entity/sparse_set.hpp" #include "entity/storage.hpp" #include "entity/utility.hpp" #include "entity/view.hpp" #include "locator/locator.hpp" #include "meta/adl_pointer.hpp" #include "meta/container.hpp" #include "meta/ctx.hpp" #include "meta/factory.hpp" #include "meta/meta.hpp" #include "meta/node.hpp" #include "meta/pointer.hpp" #include "meta/policy.hpp" #include "meta/range.hpp" #include "meta/resolve.hpp" #include "meta/template.hpp" #include "meta/type_traits.hpp" #include "meta/utility.hpp" #include "platform/android-ndk-r17.hpp" #include "poly/poly.hpp" #include "process/process.hpp" #include "process/scheduler.hpp" #include "resource/cache.hpp" #include "resource/handle.hpp" #include "resource/loader.hpp" #include "signal/delegate.hpp" #include "signal/dispatcher.hpp" #include "signal/emitter.hpp" #include "signal/sigh.hpp"


Since it's a header-only library, with a lot of templates, only the used code will be compiled.

So yes, this is tiny. Tinier than Unity, CryEngine, Unreal Engine, or other huge frameworks of that kind.


A comparison to those engines is a bit much isn’t it? It’s not like it provides comparable features.


IIRC, all those engines provide an ECS that could be compared to entt.

Also, there is Hazel[0] which is based on entt and is the subject of an amazing youtube series[1].

IMHO, tinier means less features, at that point what could be considered comparable?

  [0] - https://github.com/TheCherno/Hazel
  [1] - https://www.youtube.com/playlist?list=PLlrATfBNZ98dC-V-N3m0Go4deliWHPFwT


To be comparable in size we should look at what they do. The three game engines originally mentioned have everything from physics to an entire visual IDE. A comparable smaller project is Godot not entt.

A comparable ECS implementation is what you’re after. Is entt tiny in comparison to similar projects.


buy gold


Electric battery


As elsewhere, making a non-trivial battery ain't so simple.


I use rss to read the news



Org-mode


Did somebody mention magit? It helps a lot


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: