12 дек. 2008 г.

Hold on on the edge!

Наконец plainEngine почти закончен. Осталось только под MacOS'ом протестировать, но проблем возникнуть не должно. Ещё есть довольно простенькая 2D графика, но хорошо расширяемая. Сносная физика на основе Bullet, то что проброшено - работает. Ещё есть тонна всяких вспомогательных субъектов. Всё это собрано и протестированно под Linux и Windows в том числе и под Vista.
Выглядит это сейчас так:

Начал потихоньку подкатывать к Alawar. В головах плавают концепты.

Сессия подкралась. Остаётся только все силы бросить на учёбу, да прибудут они со мной :)
Желания паниковать нет, но и не без }|{опы :)

26 нояб. 2008 г.

Linker

Свершилось! У нас уже больше часа как есть линкер. Осталось только под макосью потестить. Под виндой всё айс. Ура. )))

25 нояб. 2008 г.

Last mile

Вчера был "кулинарный конкурс"... впрочем, потом об это напишу, когда фото будет :D
Поинрал в Тургор - великолепно :)
Ещё эл. гитарой обзавёлся... Но пост не об этом.

Пост снова о нашей поделке :)
Итак жирные плюсики:
  1. Помимо сообщений теперь есть Request'ы
  2. Абстракция над runtime class inspection
  3. Система объектов переделана, совсем. (об этом немного ниже)
  4. libMPUtility теперь таки отдельная shared library
  5. Написана куча субъектов для работы с консолью, благодаря ей ядро сейчас скорее напоминает какой-то странный(???) shell %)
  6. SimplePhysics дописан и выброшен на помойку %)
  7. Прикручиваем Bullet, IrrLicht, Horde3D
  8. Вот вот будет Linker и залив на Google Code
Теперь об изменениях в подсистеме объектов:
  1. Граф теперь история.
  2. Общность тоже
  3. Теперь есть только фичи
  4. Теперь объект состоит из других объектов.
    Добавление/Удаление очередного "кусочка" происходит одновременно с добавлением/удалением фичи. Можно не привязывать к фиче, тогда "кусок" живет вместе с объектом до самого dealloc'а
  5. Это решает все пробдемы предвдущей реализации.
  6. В текущей пока проблем не обнаружено.
Осталось пройти ещё чуть-чуть...
Тихо подкрадывается сессия... )

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

[[blog alloc] init];

Таки осознал необходимость и создал. Возьмусь наверное переносить контент со старых мест дислокации.
Пока старое можно найти тут

19 окт. 2008 г.

Madness

Ночь. Отладка. Что-то обсуждали:
Я: я не понимаю о чём ты!
ChaoX: *после некоторого замешательства* Я ТОЖЕ!

15 окт. 2008 г.

Мечи-Топоры (текст)

Шёл я лесом, видел беса
Бес картошечку варил
Топорами и мечами
Всех прохожил он рубил!

Припев (х2):
Мечи, топоры!
Ты не думай, ты руби!

Шёл я лесом, видел беса
Бес зарубленных варил
Топорами и мечами
Он укропчик покрошил!

Припев (х4)

Шёл я полем, видел горе:
Бес голодный долго был
Топорами и мечами
Он козявку зарубил
Он комарика сразил
Червячка он заморил
После ВЫПИЛ-ЗАКУСИЛ!

Pagan-Trash-Brutal-Black Metal группа СаХароГ

Пару слов по поводу названия - в честь фамилии препода по истории (Сахаров).
Треклист дебютного альбома "Мечи-Топоры"
(названия составлены из фраз вышеозначенного препода)

0) Плохо, когда берут (интро)
1) Мечи-топоры (заглавная тема альбома)
2) Меч закалил
3) Збагами апщацо
(по русски - с богами общаться)
4) Сила - война
5) Человеческий материал
6) Закобыло с сохой
(бывш. за кобылой с сохой)
7) Податливое население на большой территории (инструменталка)
8) Что могли - захапывали, собирали, концентрировали (аутро)
Бонус-треки:
9) Убивают
10) Колоссальное седло

2 окт. 2008 г.

Сказка на ночь

Попросила Алёна рассказать ей по аське сказку на ночь. Представляю вашему суду то, что из этого вышло:

Как то раз на опушке густого зелёного леса сидел Брынь. Он сидел на стволе дерева, сваленного, вероятно, когда-то давно, и играл со своими форюльками. Он нашёл их вчера в этом самом лесу и был тому несказанно рад. Форюльки были совсем свежие и ещё пахли смолой. Но скоро у его друга Тыртыра должен был быть день укоренения.
Стоит поведать читателю, что Брынь, как и Тыртыр были пеняками. Пеняки - древний древесный народ. Каждый пеняка вначале отпочковывается от родителя, затем родители сажают его в землю, и ухаживают за ним, пока он пускает корни, потом пеняки растут как деревья, и лишь в конце корни становятся забавными ножками и пеняники семеня ими начинают бегать за счастливыми родителями потому пеняки празднуют три праздника: день отпочковывания, день укоренения и день пенянья. Конечно же самый важный из них - день пенянья - ведь в этот день пеняка рождается как личность. Но до Тыртыриного дня пенянья было ещё 7 васицов, что 2 года по человечьему летоисчеслению.
Но что-то мы слишком отвлеклись.
Так вот. Брынь сидел, болтая нагами и думал: "Если я подарю Тыртыру форюльки, то он будет страшно рад. Ведь так редко удаётся находить форюльки. И потому так хотелось бы их оставить их себе." Так он сидел и думал, выстукивая ногабми по бревну, на котором сидел, ритм деревымбы. И не заметил как рядом с ним приземлился ворон Карри. Карри, как и любой порядочный ворон, был очень-очень мудр. Через некоторое время Карри нарушил молчание:
- Брррынь, о чем ты так усерррртноо тумаааешь? (тут стоит сказать, что пеняки в силу своего древестного происхождения не отличаются сообразительностью. И потому они очень меняются в лице, когда думают, так что по пеняке всегда можно понять, что он задумался)
- Я нашёл форюльки - ответил Брынь
- О тааа, мой йунный тррруууг, йааа вижжу. Очееньь пальшойй уттачча найти форррюльккаа!
- И теперь не могу решить, что с ними делать - продолжал Брынь - подарить Тыртыру на день укоренения или оставить себе на память?
- Так фет фсё прррросто! Ты иметь 4 форюлька, значит мочь потарррить 2 Тырртырру,а 2 оставить себе
- О! Спасибо тебе мудрый ворон Карри, что помог мне решить этот нелёгкий вопрос.
- Несачто. Карррррр. - попрощался ворон, помаахал крылом и улетел
А довольный Брынь весело пошёл домой.

18 сент. 2008 г.

Гадкие лебеди

Кто мы? Ваши ли дети?
Но души глупцов напрасно пусты.
Кто вы? Куда вы идёте?
Не признаёте своей слепоты!

Рекою судьбы принёсло нас сюда,
Наставников наших - с неба дождём
Нашей силы исток - в сердце тоска
Мы следом за нею в пучину уйдём.

Царят средь вас невежды и глупцы,
Кто чаще сыт, тот бал и правит.
Пускай же мы мудрее чем отцы,
Их мир вовек нам не исправить.

Старик небритый и пьяный -
Вот символ истории вашей
Весь ад прошёл он упрямо
Но выстоял - значит не падший.

А с молоком вы впитали
Страх перед тем, что ново.
Ужасной угрозой считали
Тех, кто недавно был дорог.

И небо разорвано в клочья
И больше не дышит земля
Слепой человек торжествует
Он так уничтожил себя

21 июл. 2008 г.

plainEngine

Создан репозиторий для нашего нового (не совсем) проекта - plainEngine.
Чудо будет представлять собой ядро дивжка и базовый набор компонент. Язык: Objective-C под Linux/MacOS X/Windows.
Основанный на нашей концепции Metaphore RSDK является последователем поделия (в итоге весьма тормозного и уобого) на C++ под носившим название 3dream.

15 июл. 2008 г.

Памяти Алины Шевченко

Ветер забвенья души торопит в бездонные неба поля
Девушки юной тело принять готова сегодня земля

Плачет свечей вереница в скорбном молчанье стоя
Жаркое лето (сонно) хоронит нежный цветок декабря

13 июл. 2008 г.

По(с)тупление

Это были до боли нервные 3 недели

ОмГУ ИМИТ - с русским у мну всё в порядке, область по информатике засчитали за экз. по математике.

НГУ - хотел на ФИТ, подал на Мехмат, без экзаменов всё по той же олимпиаде. Зачислили.

МГУ Вычислительная Математика и Кибернетика - наша зимняя победа на Intel ISEF "Юниор" сулила поступление без экзаменов, но вот уже много лет как решение принимают в последний момент. Кроме всего прочего тут принимали только оригиналы документов, которые были оставлены в НГУ, пришлось, невероятно рискуя, их забирать. В итоге, после 2х недель напряжённого ожидания, гуляния по МОСКве (не без приключений ) и прохождения МГУ-шной медкомиссии, решение таки было обнародовано: по "Юниору" брать без экзаменов. С воплями "УРАА!!! КАВАЙЙ!!! БДЫЩ!!" наша троица душным поездом отправилась домой.
Теперь главное там учиться , а не...