[WT] [Архив] [Поиск] Главная Управление
[Совместно с Ычаном]
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]
Ответ в нить [Последние 50 сообщений]
Имя
Animapcha image [@] [?]
Тема   ( ответ в 4274)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, OGG, PDF, PNG, PSD, RAR, SVG, SWF, TXT, XCF, ZIP размером не более 10000 кБ.
  • Ныне 2606 unique user posts. Посмотреть каталог
  • Радио:
Файл: 130303824874.jpg-(109.04KB, 600x879, e49b443d9d772bb375ee2c9531716ec4.jpg)
4274
No. 4274 watch    
Вброшу свой крузис.
http://sourceforge.net/projects/rr-rr/
448 сообщений пропущено. Показаны 50 последних сообщений Развернуть все изображения
No. 9586    
Файл: 13695090633.jpg-(304.33KB, 934x934, 24081263.jpg)
9586
>>9579
Я хочу "(полу)автоматическую" (со скидкой на неуправляемость и отсутствие RTTI) сериализацию графа объектов, как в (dot)(ОТ СПАМБОТА СЛЫШУ)NET/джаве — если вдруг запилю такую, то единственной проблемой останется несовместимость версий.

>>9582
Утю-тю, и какая же парадигма меняет суть сериализации?
No. 9587    
>>9586
>Утю-тю, и какая же парадигма меняет суть сериализации?
Динамическая типизация?
No. 9588    
>>9587
Сторонний парсер/сериализатор может это делать.
No. 9589    
>>9588
Стороннему сериализатору одинаково надо знать тип сериализуемого объекта.

Единственный простой способ что-то сохранить в C/C++ - это дамп всей кучи и запрет на использование абсолютных ссылок.
No. 9590    
>>9586
>со скидкой на неуправляемость и отсутствие RTTI
У тебя AAA+ проект, что тебе именно кресты дались? Тем более сейчас даже физика и AI на GPU выполняются: http://books.nips.cc/papers/files/nips25/NIPS2012_0534.pdf

т.е. можешь хоть на Ruby писать.
No. 9592    
Файл: 136959231913.jpg-(161.53KB, 1920x1080, shot3336-25.jpg)
9592
>>9586
> Утю-тю, и какая же парадигма меняет суть сериализации?
Функциональная, например. Иммутабельность => сохранение и восстановление состояния тривиально.
No. 9593    
Файл: 136960969059.png-(490.12KB, 1153x626, 26_05_2013 23:43:19_444.png)
9593
>>9589
>дамп всей кучи и запрет на использование абсолютных ссылок.
Кстати, пока искал чего-нибудь почитать по теме, нашёл на гд.ру похожую идею: выделить блок памяти по фиксированному адресу и распределять данные в нём. Но это не круто, мне намного симпатичнее Boost.Serialization.

>>9592
Да нет, посмотрел примеры на stackoverflow выучить этот ваш хаскель, что ли — проблемы и, например, подход к циклическим ссылкам ровно те же.
No. 9594    
>>9593
> Да нет, посмотрел примеры на stackoverflow выучить этот ваш хаскель, что ли — проблемы и, например, подход к циклическим ссылкам ровно те же.
Не знаю, какие примеры ты смотрел, но выводы неправильные. http://hpaste.org/88668
За такую общность, правда, приходится расплачиваться долей производительности: иммутабельность в общем случае добавляет константный оверхед.
No. 9598    
ОП, зделай себе редактор карт типа http://www.youtube.com/watch?v=aR6k7SZYYWE
No. 9619    
Файл: 136986926472.png-(375.93KB, 512x512, 26433849.png)
9619
>>9598
Нужен. Но ЛЕЕЕЕЕЕЕЕНЬ ;_;
В перспективе без него никуда, но по вышеозначенной причине, скорее всего, ограничусь "режимом Бога" и консолью.

Запилил партиклы. :3
...забыв и про геометрические шейдеры, и про ультимейт: частицы с постоянными параметрами, живущие в локальных координатах эмиттера — костры подходят — можно вообще создать единожды при инициализации системы, а дальше рассчитывать полностью на GPU (т. е. умершие возрождаются — позиция вычисляется исходя из (time + shift + deadZone) % lifetime). Завтра займусь оптимизацией.
No. 9621    
>>9619
*очевидный фикс: (time + shift) % (lifetime + deadZone)
No. 9624    
Файл: 136992423378.jpg-(17.12KB, 500x288, 060eecae.jpg)
9624
А как это чудо компилять под linux?
Или только ручками? Тогда кокие у него зависимости?
Под вайном он забавно падает, лол.
No. 9629    
Файл: 136994193422.jpg-(245.50KB, 1240x1754, 20489982.jpg)
9629
>>9624
Никак.
>Под вайном он забавно падает, лол.
Не должен. Если видеокарта тянет OpenGL 2.1 (а лучше 3.2) — проверь родные драйверы.

ОПТИМИЗИРОВАЛ системы частиц (>>9619). Можно пойти ещё дальше: объединять меши одинаковых систем, жертвуя уникальностью, — но это уже не к спеху.
No. 9644    
Лазил по соурсворджу и наткнулся на 410chan. За что мне такая жизнь, а?
No. 9647    
Файл: 137043432143.jpg-(562.55KB, 1000x1330, 21499267.jpg)
9647
>>9644
У нас ты станешь девочкой-волшебницей...

Тем временем я продолжаю думать, что пилю сериализацию, и наконец-то заметил в списке своих расширений Binary Shaders — они на очереди.
No. 9650    
ОП, тебе ещё не надоело работать в одиночку?
No. 9653    
Файл: 137054394214.jpg-(868.15KB, 900x1200, 19369511.jpg)
9653
...Точнее даже как в том анекдоте:
"Написал сериализацию. Сейчас работаю над десериализацией".

>>9650
А что, порисовать хочешь? :3
No. 9654    
>>9653
Нет, просто рано или поздно тебе надоест в своей песочнице возиться и захочется пилить что-то новое и интересное с другими людьми. Я всё жду этого момента.
No. 9656    
>>9654
Ты не понимаешь сути движкописательства.
мимодвижкописатель
No. 9657    
>>9656
Я не могу не понимать сути движкописательства, потому что я тут самый первый мимодвижкописатель.
No. 9658    
>>9657
Нет Я!
No. 9659    
>>9657
Первый движкописатель, любит пилить в компании... Эрогей штоле?
No. 9660    
Файл: 137062826080.jpg-(79.69KB, 539x440, lift.jpg)
9660
>>9654
Действительно. Лучше бы помог мне LispOS пилить (http://410chan.org/dev/res/8824.html)

Нужна няша разбирающаяся в тонкостях микроядерных OS и JIT-компиляции.

Графона конечно не будет, но графон и не нужен, когда у тебя такой-то менеджер процессов.
No. 9662    
>>9654
Нет, не надоест. Мне тоже за 4 года не надоело, это не может надоесть.
No. 9663    
>>9662
А мне надоело. Через 5 лет. Я нашёл няш-художников, и теперь мы делаем игры. Не такие крутые, как хотелось бы, но игры, а не движки.
самый первый мимодвижкописатель
No. 9666    
ОП, так что ты думаешь про микроядро? Каковы шансы убить Линупс и прочие C/C++ мерзости?
No. 9668    
Файл: 137073939224.png-(8.92KB, 652x391, se.png)
9668
>>9654>>9657>>9663
;_;

Сериализовал граф объектов. Завтра уже сегодня >_<" добавлю в минимальный пример ВСЕ грабли, и, если он при этом не развалится, второй пунктик >>9578 будет лишь вопросом времени.
No. 9670    
>>4274
ОП, а поведай, какой тип данных ты используешь для идентификации ресурсов. Т.е., например, есть у тебя объект "сырно с крылышками". Каким образом он ссылается, скажем, на текстуру крылышек?
No. 9671    
Файл: 137079297654.png-(1.54KB, 180x180, 9895629.png)
9671
>>9670
Имя файла относительно рабочего каталога.
No. 9673    
Файл: 137082089739.png-(435.02KB, 1000x666, 12991099.png)
9673
Может быть, и ерундой занимаюсь... Но, по моему скромному мнению, это, во-первых, нужно, во-вторых, стоит отладить ДО прикручивания к движку.

Так вот. Proof of concept сериализации графа объектов:
http://sourceforge.net/projects/rr-rr/files/serialization-poc.rar/download
Если вдруг кому не лень, попробуйте её сломать. :3
Прошу заметить, что "объекты-из-файлов" хранятся в сейве в виде имён файлов.

Предвижу две проблемы в реальном применении:

— Сериализация состояния скрипта. Продублировать ту же систему для Lua-типов не проблема, однако хранение в сейве дампов всех засветившихся функций меня не радует — при таком раскладе их изменения не отразятся на сейве... возможное решение — как-нибудь назначить скриптовым функциям уникальные идентификаторы (я изначально делал что-то неправильно?..);

— Цепочки функций обратной связи на уничтожение объекта. Сериализовывать их не стоит из идеологических соображений (хотя...), а как-то восстанавливать придётся.
No. 9685    
>>9663
Что интересного в производстве игор? Они же все равно получаются унылыми и одноразовыми. А еще их разработка когда-то кончается и нужно выдумывать новую игру.
No. 9686    
>>9685
> Что интересного в производстве игор?
Программирование вычислений в режиме soft-realtime?
No. 9693    
>>9685
>А еще их разработка когда-то кончается и нужно выдумывать новую игру.
Это самое хорошее же!
А вообще, нет ничего лучше выпуска готового продукта. Тут и радость от завершения работы, и гордость за конечный результат, и ощущение свободы. Один раз попробовав, хочется ещё.
No. 9703    
>>9693
Никогда этого не понимал. Каждому свое, думаю.
No. 9710    
Файл: 13713963146.png-(32.74KB, 645x293, Screen Shot 2013-06-16 at 19_23_30.png)
9710
ОП, ну зачем тебе С/С++? Негодный же язык.

Lisp:
point X Y => | x => X | y => Y | metric => X^2+Y^2 sqrt | + P => point X+P.x Y+P.y


C/C++
class point { private: int X; int Y; public: point (int XX, int YY) { X=XX; Y=YY; } int x () { return X; } int y () { return Y; } metric () { return sqrt(X^2+Y^2); } point operator + (P) { return pow(P.x(),2)+pow(P.y(),2); } };

No. 9711    
Файл: 137139844854.png-(2.42MB, 1153x1252, 16_06_2013 16:44:24_750.png)
9711
>>9710
Какой ещё C++... :3
Но и он был бы сверхгодным, если бы умел модульность.
>>9685
>А еще их разработка когда-то кончается
;___;

Сохраняю и загружаю мухоморы между мирами — считая с самим сериализатором, это процентов 15~20 от всего, что должно сохраняться. Потом меню запилю (название придумал, но пока не скажу ^_^). И я хотел бы сделать это до бамплимита, так что не сильно шумите (это к тебе, Золотце, относится).
No. 9712    
>>9685
Зависит от игры. Какие-нибудь рогалики можно всю жизнь пилить.
No. 9714    
Файл: 137149815244.png-(265.69KB, 908x798, Screen Shot 2013-06-17 at 23_41_38.png)
9714
>>9711
>к тебе, Золотце, относится
а что с 0chan.hk/c/?
выдаёт пикрилейтед
No. 9718    
Файл: 137153704038.jpg-(471.29KB, 600x1273, 35093190.jpg)
9718
С ходу (кроме Newton) скомпилировалось под Win64. Debug-версия может сходить с ума, но это не (только) из-за меня.
http://sourceforge.net/projects/rr-rr/files/rr%200.0041.5_psy64.rar/download
No. 9720    
Алсо, меня не будет недельки полторы.
No. 9723    
>>9710
> C/C++
> class
> C
> class
/0
> C/C++
> /
> /
ЛИШП/ХАШКЕЛЬ
No. 9725    
Файл: 137158350730.jpg-(171.55KB, 1147x800, 4a3eea102c2e5a7dba16c19294f7d85b821a04ab.jpg)
9725
>>9723
бедняша, "С/С++" пишут чтобы показать, что в сортах не разбираются.

см http://www.dreamsongs.com/RiseOfWorseIsBetter.html


POSIX - синоним для относительно стабильной части API Линупса и концепции Worse is Better.

работа функций отсутствующих в ПОЗИХе не гарантируется ВООБЩЕ. Но тебе и ПОЗИХ хватит для undefined behaviour. Единственный способ избежать segmentation fault - отказаться от Линупса и не писать на C/C++ вообще. На Haskell тоже не пиши, иначе девочкой станешь.
No. 9726    
>>9725

посикс-хэйтер-кун, ты видимо не работал с другими промышленными АПИ раз говоришь что оно ужасно.
Или приведи пример обратного. иначе ты просто ниасилятор, да
No. 9728    
Файл: 137164666359.jpg-(327.67KB, 700x992, 14.jpg)
9728
>>9726
Я вообще никогда не работал (безработный же).

Однако знаком с Common Lisp и наслышан о Lisp-машинах, где C/C++ был лишь для совместимости Линупсyным софтом, как cygwin в Windows.

Посему "C/C++" пишу чтобы выказать пренибрежение к недоязыку и недо-ос Линупс.
No. 9732    
>>9728

> выказать пренибрежение к недоязыку и недо-ос
> потенциальному работодателю, который их с большой вероятностью использует

Все правильно делаешь
No. 9733    
Файл: 137177387934.jpg-(214.53KB, 799x999, 35c455899a6febaf9dc5fd6eff96c7d4.jpg)
9733
>>9732
Это ОП-то работодатель?
No. 9735    
В своей недорезюмешечки ты также написал в соседней нити.
No. 9738    
Файл: 137180896723.jpg-(1.40MB, 800x1000, 24282120.jpg)
9738
Ребят, ну я же попросил :C

Попробовал коммитнуть с кофеварки, та не прожевала файл с комментарием в UTF-8 (shame on you, SVN command-line tool!). Дублирую здесь.

— База физических материалов. Бинарная. Связывается с миром единожды, идентификация по именам.
— Пул уникальных физических примитивов (одинаковые объединяются) и запрос у Newton подробной информации о них.
— (Де)сериализация: Rigid Primitive, Rigid Body; начал Trail & Particle System. Ф-фух...
— Сериализация теперь отключаема.
— Значительно (~3x) оптимизировал сериализацию путевых точек. Теперь хранение их в сейве будет меньшей проблемой... запоминать сгенерированные рёбра в отдельном списке?
— Опечатка в USystem.pas: SRWLockShared'ам присваивались их SRWLockExclusive-аналоги.
— GetFileVersion — няшность. (Но это вроде уже было).
— Теперь можно изкоробки сохранять флоаты и векторы в поток в формате half16 либо 8- и 16-битных нормализованных целых (но не -1..1, а с известными границами).
— Хэш флоата с эпсилоном (для пулов, допускающих небольшую разбежку) и Crc64 (последний не пригодился, но пусть будет).
— Критичные по размеру форматы задают битность динамически.

P.S. Фактически всё, что я сделал — научился сериализовывать ту пачку мухоморов вместе с физикой. Осталось ещё куча всего, но чуть меньше, чем в прошлый раз. (Тот же скрипт, где вся логика... (⇀‸↼‶) А, точно, луа любезно предоставила для таких случаев lua_upvalueid и lua_upvaluejoin).
No. 9739    
Это опять золотце?
No. 10002    
Файл: 13721777581.jpg-(261.09KB, 1385x1971, 27954029.jpg)
10002
Willkommen in meinen Schloss.
>>9999
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]

Удалить сообщение []
Пароль  
[Mod]