http://hiasm.1gb.ru/forum_serv.php?q=56&id=480 (750к)
в архиве бинарные версии демок и исходники к ним. В обоих схемах использован движок GE, в рамках которого демонстрируется динамическое изменение решетки игрового поля.
Этот топик читают: Гость
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
| ||
Голосовали: | Assasin, filyaxxxcom, kamakama |
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Dilma, а новый пак GE-компонентов можно
![]() ------------ Дoбавленo в 19.11: Извиняюсь, после "добавлено в..." не показывается обновление сообщений, следовательно кружочек темы не загорается галочкой ![]() ------------ Дoбавленo в 19.20: Кстати, при компилляции:
|
|||
карма: 10 |
|
Ответов: 4641
Рейтинг: 334
|
|||
Life весь комп почти повесил. Не думал что игра life может так нагружать
![]() |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
цикл на 45*50*8 итераций выполненный в классике не каждой машине по зубам окажется... тут уж ничего не поделаешь. Собственно это основная причина, по которой стандартный пакет не подходит для игр совершенно.
|
|||
карма: 27 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
И, попробую догадаться, исправлением этой "причины" вы и занимаетесь, Dilma, так
![]() |
|||
карма: 10 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Dilma писал(а): тут уж ничего не поделаешь |
|||
карма: 27 |
|
Ответов: 875
Рейтинг: 322
|
|||
Установил все элементы, схемы открываются, но ни одна не запустилась. В Balls - ошибки такие же как у Assasin. Куда копать?, интересно же ведь!
|
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
все элементы даны в теме Game engine
|
|||
карма: 27 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Так оттуда элементы и взяты
|
|||
карма: 10 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
по какой ссылке?
|
|||
карма: 27 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
|
|||
карма: 10 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Dilma писал(а): цикл на 45*50*8 итераций выполненный в классике не каждой машине по зубам окажется... тут уж ничего не поделаешьЗдесь рассказан иной, более шустрый, алгоритм In this article, I evolve the simplest Life implementation into this algorithm, explain how it works, and run some universes for trillions of generations as they grow to billions of cells
Делают... Собственно, меня больше интересовало кеширование с помощью QuadTree... |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Assasin писал(а): E:\HiAsm\Elements\delphi\code.\hiGE_SpriteArray.pas(25) Error: Undeclared identifier: 'OnSpriteDead'25 стока hiGE_SpriteArray.pas
78 строка hiGE_Scene.pas, где лежит описание объекта FScene
=> содержимое архива по ссылке выше не соовтетствует содержимому каталога code. Выводы делаем самостоятельно. Galkov писал(а): Здесь рассказан иной, более шустрый, алгоритмлет этак 7-8 назад реализовывал алгоритм с отслеживанием областей популяций живых клеток, что позволяло моделироть жизнь на (в теории конечно) бесконечной матрице, т.к. производительность полностью зависела только от реального количества клеток, задействованных в симуляции, а не от размеров поля. Но в hiasm любая реализация на нативных элементах будет тормозить все равно. |
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Будет.
Но алгоритмическая сила - все равно остается. Деревья-то создавать, не получится сегодня - нужна модификация поинтер-элемента, хранящая переменный объект заданного класса ((это типа - каждый за свое)) А вот когда-то давно, проверял на рекурсивной сортировке (наверное и схему на форуме найти можно) Обыкновенная пузырьковая (простая как топор) - тормоза по порядку O(N^2) Рекурсивная (сложная, зато быстрая) - O(N*log(N)). Вот вам и сила алгоритма, вполне заметная при N>1000. И я ее еще как и замечал. В классике ![]() Правда, экспериментально получилось что-то типа O(N*log(N)^2)... Думаю, что затраты на динамическую аллокацию добавили еще один множитель log(N) Но сравнивать с пузырьковой - небо и земля. Не, я не искал это дело как Life implementation ![]() Повторюсь: меня интересовал двухкоординатный кэш в виде дерева, для быстрого доступа к объектам. Например, чтобы без проблем определять, проходит ли линия связи под точкой. Два адекватных механизма пока вижу: этот самый Quad-Tree, и еще R-Tree. |
|||
карма: 9 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Таки меня заинтересовала технология в HashLife.
До сих пор в толк не возьму, как можно получить логарифмическую зависимость времени от числа генераций. В смысле - логически-то все правильно, а душа все равно не принимает. Разобрался в деталях, и даже перевел. Если кому интересно - посмотрите (word-2003) Переводчик я никакой, за абсолютную точность и акценты - не поручусь. Как сам понял - так и "перевел" |
|||
карма: 9 |
| ||
файлы: 1 | hashlife.rar [47.3KB] [414] |
15