8 нояб. 2008 г.

Nekro_logic: No more visitor

Копался в старом. Нашёл:
Nekro_logic: No more visitor
Пост датирован тем моментом, когда он по логике вещей должен был оказаться в блоге, но оного у меня тогда ещё не было ))

7 нояб. 2008 г.

plainEngine must go on!

Итак:
  1. Оно работает под MacOS X. Правда на некотороые вызовы runtime, XCode благим матом орёт, мол legacy и 32 bit only. Обидно. Надо делать слой абстракции.
  2. Оно теперь очень бержёт память, не течёт ею.
  3. Планируются ещё несколько фич (да, я знаю, пора бы уже закончить их добавлять):
    1. Оптимизация отсылки сообщений.
    2. Таки добавлю возможность ответа на сообщение. (небольшие изменения в API :( )
    3. Слой абстракции над runtime функциями для инспектирования классов.
    4. Слежение за изменением признаков. (Для удобства заворачивания компонент изначально не предназначенных для plainEngine).
    5. Некоторые внутренние изменения в подсистеме объектов.
  4. Так же уже написаны
    1. MemorySharing subject (общая область памяти)
    2. MessageAnnouncer subject (отладочный субъект ведущий лог отправлемых сообщений)
    3. Частично SimplePhysics для Thermal Cubes
  5. Планируется выделение части ядра в отдельную libMPUtility
  6. После того как будут выполнены п 3.3 и 5 почти сразу будет Linker ибо MPModule уже написан.
Вот вроде бы и всё. Буду надеяться что не забыл ничего важного. Ах да! Это по прежнему не на Google Code :) ибо лень %)

4 нояб. 2008 г.

Немного о фичах

Фичи ядра вцелом:
  1. Кроссплатформенность
  2. Модульность (субъекты(код) полностью отделены от объектов(данные); субъекты можно менять на ходу, так что никто этого не заметит)
  3. Собственная парадигма в основе (тем кто видел, понравилось; в частности можно в рендере можно попросить все объекты которые можно отрендерить; очень удобно моделировать окружающий мир; на эту тему будет отдельное описание с примерами)
  4. Многопоточность+псевдопоточность (1 субъект = псевдопоток; N псевдопотоков рассовываются по M реальных потоков произвольным образом; внутри одного потока псевдопотоки умеют делать yield и отдавать время соседу(оч.удобно если мы, например, ждём ответа от физики) )
  5. Контроль целостности объектов (есть возможност зафиксировать часть графа т.е. если у самолёта есть закрылок с углом наклона, то он там и будет пока самолёт целиком не удалят)

Основные фичи парадигмы(и немного её реализации):
  1. Отделение (общих)данных от кода обработки
  2. Возможность выборки по признаку
  3. Возможность реализации перехода признаков (мокрое <-> сухое и т.д.)
  4. Возможность классификации/кластеризации (не знаю как это может пригодиться в игре (хотя для ГА и нейро сетей...), для data mining рулит)
  5. Быстрый доступ до общности (т.е. коррдинаты, ориентация и прочее что есть почти у любого объекта), чуть более медленный для признаков (логарифмическая сложность).
  6. Возможность реализации "составных" признаков (огонь=рисуемый(с-ма частиц)+звук(огонь)+...+тепмпература(значение)+...)
  7. Система сообщений (очень. быстрая) через которую всё и живёт.

31 окт. 2008 г.

Halloween


Вот так я выглядел в этот замечательный праздник )))
Народ шарахался. В частности лектор по алгоритмическим языкам, и инспектор курса :D Потом во время дырки в расписании взялись кататься в лифте. Народ с ВМК ржал. Гламуоные деффачки с эконома сцались :D Мухохах :D
Вот собственно и всё )

27 окт. 2008 г.

Code, freaks and university

Итак всю минувшую неделю готовилсь к коллоку (МАТАН) в универе. А потому ничего нового не написали, лень же не позволяла даже залить свежие сорцы на репозиторий google. А на нашем локальном репе, как нетрудно догадаться, они значительно свежее. В субботу таки сдали злосчастный коллок (на 4, оба). Вчера нашло вдохновение и снова уселись за буки. Итого отловлен эпичный баг в ядре, пофиксен. Оно собрано под окнами. До написания нормального линкера осталось только побороть одну (вы уверены? может больше? O_o не не не!) странность под окнами.
На данный момент я пишу simple render, прикручиаю Horde3D. ChaoX - simple physics и shared memory zone.
Написание документации как-то повисло где-то на мне.
В проекте: адвенчура по манге, инди Thermal Cubes.
Грядёт коллок по линалу...

21 окт. 2008 г.

Core completed

Сегодня, вернее уже вчера. Мы с ChaoX'ом таки дописали ядро plainEngine.
Осталось (из наиболее важных задач):
  1. Linker
  2. Graphics
  3. Lua