Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет nancygold ([info]nancygold)
@ 2024-08-23 00:52:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Настроение: accomplished
Entry tags:computing

Spell of Mastery Progress

Replacing OOP with ECS for everything was easy.
I had to just replace `type` macro with `cls` macro.
But unlocking full expressiveness of ECS is far harder.
I have to rewrite core parts of the core code.
And most stuff depending on it, like rendering.
But existing rendering code was too clunky anyway,
like it had separate path for drawing terrain and units.

What do I mean by ECS features?

* Unrestricted site map size.
  I tried using actual octree voxels.
  But it was agonizingly slow.
  Compared to the bitmaps I'm using now.
  These don't allow raycasting but hash lookup is so much faster than trees.
  And my goal is supporting a 1024x1024x1024 site.
  since I want to check if I can unify the entire world map into a single
  seamless site.

* Uniformity between units and grid cells.
  Think floating island, which can be seen as both amalgamation of
  cells and a unit.
  Or proper cell animation, including running water and gas diffusion.

* General set theoretic queries.
  Haven't implemented these yet, since they are just too expensive
  for larger worlds.
  But cells as entities allow for efficient sparse grid.
  But I can still have these when the number of objects is a few thousand,
  like for important characters, but not every blade of grass.

In the end I came with architecture, wher each cell amalgamates properties from
both the terrain and the placed inside of it. That way I will have several solid
entities having intersecting cells and optionally sustaining damage or gaining
momentum.

Kinda ovekill for a turnbased XCOM clone, but collapsing platforms are a big
thing in XCOM style games. And I always the goal of having more environmental
puzzles and Shadow of Colossus style boss battles, where characters can climb
on top of a larger moving colossus. Then I already began transitioning to
a new tiling system, allowing for non-square structures. And the rendering code
had numerous issues relating to topologically sorting multicell units.

There was also issue with implementing mounted units and squad formations,
where squad acts as a single unit, but has properties of several units.
And say a squad of 5 could be able to carry a large object above their heads.
That is because I always wanted to have sokoban style puzzles.

More issues is that many cell tiles are non-uniform, so units entering them
should be offset a bit from the grid to look appropraite. The squad of 5 is
too large to fit single 64x32 gird tile, so these units have to be dispered a
bit into neighboring cells. That poses questions like combining the animation
and movement system with dispersing and offseting these units.

Normgroids say it is a stupid idea to turn game viewport/camera into an entity.
But then one may want to have features like camera following specific character,
or moving on specific path. And I also need these features for other entities.
Or you may have several preset cameras and switch between them. Like in a
multiplayer game. So it makes perfect sense for camer to be an entity even in
a 2d game.

All that requires a robust entity representation.

I can go endlessly about how ECS makes things easier, but I personally needed
that uniformity and set theoretic stuff the most. Even if for the most
important entities. The game became just too complex, when I implemented the
world view with separate world_unit type, and then cosmic_unit type, to allow
moving units between world and iterations of the same world. Since I wanted to
implement time travel. Suddenly ECS was that only one way to implement that.

So yeah, cache locality was not the reason I implemented ECS.
Most normies hate ECS becasue it is really confusing to construct ECS entities.
And the normgroid languages don't support them.
But my Symta is a dialect of Lisp, so nothing a good macro cant solve.





(Читать комментарии) - (Добавить комментарий)


(Анонимно)
2024-08-23 09:42 (ссылка)
>зачем в XXI веке нужно Bink Video?

Как минимум лет 10 в XXI веке (т.е. после 2000ых) у Bink video не было альтернативы в плане lossless сжатия и вычислительной стоимости. К 2010ым созрели h264 visually lossless энкодеры / компы стали мощнее.

>А XCOM: Enemy Unknown
>Bink Video

Садков-то тут причем? Человек вообще срет на всё с чем в детстве не сталкивался, ну или не мог столкнуться теоретически. Ну AI любит разве что.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]nancygold
2024-08-23 14:05 (ссылка)
>Ну AI любит разве что.

cuz AI makes the artoids mad

(Ответить) (Уровень выше) (Ветвь дискуссии)


(Анонимно)
2024-08-23 16:07 (ссылка)
What have "artoids" ever done to you? Why is this deep desire to make people mad? You are celebrating techno-capitalists fucking over the little guys, and using their own art work to fuck them at that.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]nancygold
2024-08-23 16:28 (ссылка)
In my definition art is a form of self expression.
But these normies do it for money, serving capitalists as automations.
So no wonder they can be replaced by more efficient machines.
Their art is soulless fanservice at best.

(Ответить) (Уровень выше) (Ветвь дискуссии)


(Анонимно)
2024-08-23 17:28 (ссылка)
>I hate normies for no actual reason

This is what amounts to. Because there is a need for commercial art, for advertisements, for websites, for products, for movies, TV, video games. Even the great art works of the past, where artists definitely expressed themselves were made for some wealthy patrons.

I see no reason to celebrate dehumanization of the economy. And you aren't of the owner class. They'll replace crazy Russian tranny game programmers too, if there is enough demand.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]nancygold
2024-08-23 20:36 (ссылка)
Real artists all died poor.

(Ответить) (Уровень выше) (Ветвь дискуссии)


(Анонимно)
2024-08-23 21:00 (ссылка)
Это было до интернета.

(Ответить) (Уровень выше)


(Анонимно)
2024-08-24 06:42 (ссылка)
"When Leonardo da Vinci died, he had bank assets in Florence of 400 gold ducats (1.4kg of gold). In addition, there were properties in Milan and Florence that yielded annual rental income. The Duke of Milan had also given him rights to draw water from the St. Christopher canal, which also brought in regular income."

"Thanks to his prestigious clients (Hieronymus) Bosch was comfortably well off, but never rich."

Иди нахуй, а?

(Ответить) (Уровень выше)


(Анонимно)
2024-08-23 18:39 (ссылка)
Also this answer is very typical. Conversations with you always felt like what would later be called "a conversation with an LLM" -- like you generate a plausible answer for "Describe why you hate graphical artists using this blog as the context". And it feels like there is no actual model behind it, no actual opinion, no person who holds these beliefs, just a character you paint with these generated answers, (which aren't even consistent with each other in the time span of a week), with just limited underlying foundational INSTRUCTION(like for these INSTRUCT models), "posts and comments must project strong negative feelings', "must select enemies, dehumanize them", "just devalue what other humans hold precious" or something , not sure how to formulate this INSTRUCTION exactly.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]nancygold
2024-08-23 20:37 (ссылка)
I have borderline personality disorder.

(Ответить) (Уровень выше) (Ветвь дискуссии)


(Анонимно)
2024-08-24 09:09 (ссылка)
I don't see "Frantic efforts to avoid real or imagined emotional abandonment.", I see some suppressed(i.e. not outright violent) adult form of the Oppositional Defiant Disorder. Ideation of revolutions and mass murder indicate as such.

(Ответить) (Уровень выше)


(Читать комментарии) -