<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8066019442342007691</id><updated>2011-09-06T03:35:51.444-07:00</updated><category term='сайт'/><category term='ОСВЕЩЕНИЕ'/><category term='ФИЗИКА'/><category term='БОЕВАЯ СИСТЕМА'/><category term='ИИ'/><category term='КОНЦЕПТ'/><category term='ГЕЙМПЛЕЙ'/><category term='TOOLS'/><category term='ИЕРАРХИЯ'/><category term='РОБОТЫ'/><category term='СИСТЕМА ЧАСТИЦ'/><category term='Звук'/><category term='модели'/><category term='ИЕРАРХИЯ ОБЪЕКТОВ'/><category term='ИГРОВЫЕ ОБЪЕКТЫ'/><category term='РЕНДЕР'/><category term='Deferred_shading'/><category term='ПОСТЭФФЕКТЫ'/><category term='ТЕСТЫ'/><category term='Сериализация'/><category term='ТЕНИ'/><category term='ОТРАЖЕНИЯ'/><category term='ДВИЖОК'/><category term='КОНСТРУИРОВАНИЕ'/><category term='PCF'/><category term='ШЕЙДЕРЫ'/><category term='УРОВНИ'/><category term='ПРОМО'/><category term='ДЕТАЛИ'/><category term='КЛАСС СЦЕНЫ'/><category term='ОБЪЕКТЫ'/><category term='Скрипты'/><category term='ДЕМО'/><title type='text'>RoboGame Blog</title><subtitle type='html'>Блог посвещёный созданию игры... про роботов</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-1366532743172026622</id><published>2009-08-09T11:18:00.000-07:00</published><updated>2009-08-09T11:20:46.684-07:00</updated><title type='text'></title><content type='html'>Т.к. этот блог всё равно никто не читает, больше кросс-постить сюда я не буду. Будущий ход разработки будет описываться только здесь&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.gamedev.ru/community/robo_game_blog/"&gt;http://www.gamedev.ru/community/robo_game_blog/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-1366532743172026622?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/1366532743172026622/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=1366532743172026622' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1366532743172026622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1366532743172026622'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/08/blog-post_09.html' title=''/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3131857023413610965</id><published>2009-08-08T03:56:00.001-07:00</published><updated>2009-08-08T09:27:16.404-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ДЕМО'/><title type='text'>Demo04</title><content type='html'>&lt;strong&gt;Программирование и арт:&lt;/strong&gt; XIRMAC&lt;br /&gt;&lt;strong&gt;Наброски звука для демки:&lt;/strong&gt; Евгений Ярмош (&lt;a href="mailto:TCVMusic@gmail.%D1%81om"&gt;TCVMusic@gmail.сom&lt;/a&gt;)&lt;br /&gt;&lt;strong&gt;Саундтрек:&lt;/strong&gt; PitchShifter – «Genius”&lt;br /&gt;&lt;strong&gt;Ссылка:&lt;/strong&gt; http://www.anegmetex.com/RoboDev/RobogeddonDemo04.rar (18 Мб)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Для запуска требуются установленные дрова физикса не менее 2.7.2 версии.&lt;/strong&gt;&lt;br /&gt;Убедится в его наличии можно проверив существование папки C:\Program Files\AGEIA Technologies\v2.7.2&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Управление:&lt;/strong&gt;&lt;br /&gt;WASD - перемещение&lt;br /&gt;Mышь – наведение и стрельба&lt;br /&gt;ENTER – добавить ещё врага&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Основные настройки которые можно поменять в Settings.xml:&lt;/strong&gt;&lt;br /&gt;ScreenX и ScreenY – разрешение экрана FullScreen – использовать ли полный экран&lt;br /&gt;GetUserRes – получить разрешение экрана. ScreenX и ScreenY игнорируются.&lt;br /&gt;RobotsOnArena – сколько одновременно роботов находится на уровне.&lt;br /&gt;PlayerLife – сколько жизней у игрока. Влияет на сложность игры.&lt;br /&gt;MusicVol – громкость музыки. Если 0 – отключить совсем музыку.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ожидаемая обратная связь:&lt;/strong&gt;&lt;br /&gt;- запускаемость&lt;br /&gt;- вашу конфигурацию и фпс (+ желательно разрешение экрана и кол-во заспавненых роботов).&lt;br /&gt;- баги\глюки&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;опционально:&lt;/strong&gt;&lt;br /&gt;- Критика&lt;br /&gt;- Слова поддержки&lt;br /&gt;- Плевки&lt;br /&gt;- Тухлые помидоры&lt;br /&gt;- Караваны&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;скрины:&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sn1Z9I-NeXI/AAAAAAAAAK4/Pwsqwv3cuiM/s1600-h/Demo04_1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5367545237810805106" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 194px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sn1Z9I-NeXI/AAAAAAAAAK4/Pwsqwv3cuiM/s320/Demo04_1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sn1Z8w9QFCI/AAAAAAAAAKw/OlKLgrqaw24/s1600-h/Demo04_2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5367545231364330530" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 194px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sn1Z8w9QFCI/AAAAAAAAAKw/OlKLgrqaw24/s320/Demo04_2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;youtube:&lt;/strong&gt;&lt;br /&gt;&lt;object width="560" height="340"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1x4JnGWgAdU&amp;amp;hl=ru&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/1x4JnGWgAdU&amp;amp;hl=ru&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3131857023413610965?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3131857023413610965/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3131857023413610965' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3131857023413610965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3131857023413610965'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/08/demo04.html' title='Demo04'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/Sn1Z9I-NeXI/AAAAAAAAAK4/Pwsqwv3cuiM/s72-c/Demo04_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7794119403781882897</id><published>2009-08-04T09:24:00.001-07:00</published><updated>2009-08-04T09:26:53.395-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РОБОТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Доработанная модель босса</title><content type='html'>Вообщем, я решил что действительно както низ с верхом не стыкуется, поэтому сделал из этих заготовок два робота :)&lt;br /&gt;Фиолетовыми формами показанно место будущих шасси )&lt;br /&gt;&lt;br /&gt;Вот это старый няшка но уже с нормальной большой базой:&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SnhhAnhCgBI/AAAAAAAAAKo/ogg8oZn-y5g/s1600-h/Dom1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366145619247398930" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 284px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SnhhAnhCgBI/AAAAAAAAAKo/ogg8oZn-y5g/s320/Dom1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SnhhAUIE7bI/AAAAAAAAAKg/DrA4DZDwTWo/s1600-h/Dom2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366145614042426802" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 274px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SnhhAUIE7bI/AAAAAAAAAKg/DrA4DZDwTWo/s320/Dom2.jpg" border="0" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;А вот это его маленький колёсный друг :)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SnhhAcYiLbI/AAAAAAAAAKY/bwl5rp_prHA/s1600-h/Cyclop1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366145616258936242" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 282px" alt="" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SnhhAcYiLbI/AAAAAAAAAKY/bwl5rp_prHA/s320/Cyclop1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SnhhAI8goVI/AAAAAAAAAKQ/IYxkemU0KsE/s1600-h/Cyclop2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366145611041120594" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 233px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SnhhAI8goVI/AAAAAAAAAKQ/IYxkemU0KsE/s320/Cyclop2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;В целом в каждом из них сейчас около 2500 треугольников.. следовательно с оружием и финальными шасси будет не больше 4000-4500 что вообщем то соответствует плану.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/Snhg_8SRRvI/AAAAAAAAAKI/jZgUvKUEZSo/s1600-h/Wire.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366145607642728178" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 180px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Snhg_8SRRvI/AAAAAAAAAKI/jZgUvKUEZSo/s320/Wire.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7794119403781882897?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7794119403781882897/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7794119403781882897' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7794119403781882897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7794119403781882897'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/08/blog-post.html' title='Доработанная модель босса'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SnhhAnhCgBI/AAAAAAAAAKo/ogg8oZn-y5g/s72-c/Dom1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3801272194517621940</id><published>2009-07-27T13:41:00.000-07:00</published><updated>2009-07-27T13:44:42.539-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Скрипты'/><category scheme='http://www.blogger.com/atom/ns#' term='БОЕВАЯ СИСТЕМА'/><title type='text'>Боевая система, скрипты, бонусы</title><content type='html'>Вообщем, мои немногочисленные читатели, работа над проектом всё ж таки идёт :)&lt;br /&gt;За последнее время я прикрутил к игре скрипт-движок на lua, доработал боевую систему: теперь роботы стреляют реально разными оружиями с разными параметрами и эффектами, а не как было до этого… :)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sm4RcuJaB4I/AAAAAAAAAKA/NHIWDoGUd4M/s1600-h/Wep1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5363243391366334338" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 188px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sm4RcuJaB4I/AAAAAAAAAKA/NHIWDoGUd4M/s320/Wep1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ещё прикрутил к игре такие не маловажные для геймплея штуки как бонусы. Кстати характер действия бонуса по модному задаётся через скрипт, а не железно зашито в код )&lt;br /&gt;&lt;br /&gt;Насчёт внешнего вида бонусов: я сначала хотел их сделать объектами… но потом подумал что они будут теряться в куче ошмётков от роботов и плохо читаться среди прочего хлама, поэтому сделал эдакие олд-скулл стайл бонусы :) Если сильно народ их ругать не будет, то думаю такие и оставлю.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sm4RcWxp8jI/AAAAAAAAAJ4/6iFbnDjZLfc/s1600-h/Bonuses.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5363243385092698674" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 268px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sm4RcWxp8jI/AAAAAAAAAJ4/6iFbnDjZLfc/s320/Bonuses.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3801272194517621940?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3801272194517621940/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3801272194517621940' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3801272194517621940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3801272194517621940'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/07/blog-post_27.html' title='Боевая система, скрипты, бонусы'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/Sm4RcuJaB4I/AAAAAAAAAKA/NHIWDoGUd4M/s72-c/Wep1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3945686946221736605</id><published>2009-07-12T02:19:00.000-07:00</published><updated>2009-07-12T02:21:06.192-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ГЕЙМПЛЕЙ'/><category scheme='http://www.blogger.com/atom/ns#' term='БОЕВАЯ СИСТЕМА'/><title type='text'>Боевая система: первое подобие геймплея</title><content type='html'>Работаю над боевой системой роботов. Собственно на ниже приводимом видео можно увидеть некоторое подобие геймплея: вражеские роботы обруливают препятствия, перемещаются по action points и ведут огонь по игроку. При записи видео был включён режим бессмертия ибо без него игрока уж очень быстро зарубают :)&lt;br /&gt;&lt;br /&gt;Сейчас геймплей вырисовывается уж очень какой-то зверски-хардкорный чтоли 8) Надо будет ещё работать над балансом параметров оружия, поведением роботов и тому подобное… а вообще всё выглядит довольно не плохо, думаю в конечном счёте неплохая игруля должна получиться :)&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/k1YeYJNmqqY&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/k1YeYJNmqqY&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3945686946221736605?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3945686946221736605/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3945686946221736605' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3945686946221736605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3945686946221736605'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/07/blog-post_12.html' title='Боевая система: первое подобие геймплея'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3222722124847799378</id><published>2009-07-08T03:58:00.000-07:00</published><updated>2009-07-08T04:00:33.062-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РОБОТЫ'/><title type='text'>Модель одного из боссов</title><content type='html'>Вот на днях наваял ещё одного робота (не на ходу он пока правда). По идее будет одним из боссов. Вообще по концепту был более брутальным чем получился.. даже решётка радиатора выглядит не как оскал а как милая улыбка )))&lt;br /&gt;А вот нижняя часть получилась как то  мелковато по сравнению с верхней массивной башней. Возможно стоит нижнюю базу заменить на другую...&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SlR8G1ruQII/AAAAAAAAAJw/TNaTy7fm-6g/s1600-h/DomView.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5356042313781887106" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 266px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SlR8G1ruQII/AAAAAAAAAJw/TNaTy7fm-6g/s320/DomView.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3222722124847799378?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3222722124847799378/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3222722124847799378' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3222722124847799378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3222722124847799378'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/07/blog-post_08.html' title='Модель одного из боссов'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SlR8G1ruQII/AAAAAAAAAJw/TNaTy7fm-6g/s72-c/DomView.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6762178695070567378</id><published>2009-07-05T03:06:00.000-07:00</published><updated>2009-07-05T03:08:11.822-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ИИ'/><title type='text'>Поиск пути</title><content type='html'>Приделал к редактору генератор карты препятствий, а к самой игре – поиск пути по ней. Собственно реализовано это было как и задумывалось – карта строится в редакторе по специальным лимитерам. Которые кстати можно сгенерировать по AABB выделенных статичных объектов (что несомненно удобно и сохраняет дофига времени).&lt;br /&gt;&lt;br /&gt;Вообще ячейки карты получились весьма крупные, т.к. на более мелких – роботы проскакивали точки пути и постоянно задевали за углы. Собственно они и сейчас не брезгают это делать, но уже гораздо реже. Думаю мне ещё предстоит долго танцевать с бубном, чтобы как-то отучить их от этого.&lt;br /&gt;&lt;br /&gt;Ещё одна очень не приятная проблема, которая уже давно нарисовалась в проекте – это роботы сталкивающиеся с другими роботами при движении. Собственно можно конечно попробовать приделать какое-то динамическое обруливание по AABB (я уже что-то подобное пытался реализовать в игре Technozes), но мне кажется всё это кардинально не решит проблему :(&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SlB7ZcnI2BI/AAAAAAAAAJo/OQfIcfjrgZo/s1600-h/pathfind.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5354915634050816018" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 194px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SlB7ZcnI2BI/AAAAAAAAAJo/OQfIcfjrgZo/s320/pathfind.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6762178695070567378?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6762178695070567378/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6762178695070567378' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6762178695070567378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6762178695070567378'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/07/blog-post.html' title='Поиск пути'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SlB7ZcnI2BI/AAAAAAAAAJo/OQfIcfjrgZo/s72-c/pathfind.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-1474136116006997202</id><published>2009-06-26T12:21:00.000-07:00</published><updated>2009-06-26T12:25:54.863-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='УРОВНИ'/><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Скринцы нового дизайна свалки</title><content type='html'>Провёл некоторый редизайн свалки. Предыдущий вариант мне показался какимто тёмным и фактура свалки совсем не читалась. Надеюсь сейчас стало гораздо лучше :)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SkUgigVKLJI/AAAAAAAAAJg/yjpdaylBj1Q/s1600-h/newJunkyardDesign1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5351719509366025362" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 233px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SkUgigVKLJI/AAAAAAAAAJg/yjpdaylBj1Q/s320/newJunkyardDesign1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SkUgiYEUObI/AAAAAAAAAJY/dShpD-11a-4/s1600-h/newJunkyardDesign2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5351719507147897266" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 233px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SkUgiYEUObI/AAAAAAAAAJY/dShpD-11a-4/s320/newJunkyardDesign2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-1474136116006997202?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/1474136116006997202/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=1474136116006997202' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1474136116006997202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1474136116006997202'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/06/blog-post_26.html' title='Скринцы нового дизайна свалки'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SkUgigVKLJI/AAAAAAAAAJg/yjpdaylBj1Q/s72-c/newJunkyardDesign1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6844716798037553943</id><published>2009-06-22T08:28:00.000-07:00</published><updated>2009-06-22T08:30:38.890-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ИГРОВЫЕ ОБЪЕКТЫ'/><title type='text'>Лимитеры</title><content type='html'>Сейчас занимаюсь встраиванием в движок новых сущностей - лимитеров. Практически всегда приходится уровень ограничивать невидимыми стенками. Причём которые должны реагировать только на игрока (и как вариант ещё на врагов и пули или всё одновременно). Также для игрока часто приходится заделывать дыры, сглаживать углы физ уровня чтобы игрок не цеплялся за острые выступы и не спотыкался о не нужные ямки. Но кроме того поставив у лимитера спец-флаг (который стоит вообщем то по умолчанию) можно использовать их также и при просчёте карты препятствий. Которая будет потом использоваться врагами при поиске пути.&lt;br /&gt;&lt;br /&gt;Кстати если у лимитера стоит только этот флаг – то он грузится только в редакторе, а в самой игре просто не добавляется (что вполне логично, т.к. карта препятствий обсчитывается заранее в редакторе, а в самой игре лимитер только с этим флагом не будет никак воздействовать на геймплей).&lt;br /&gt;&lt;br /&gt;Да я решил идти проверенным путём и использовать старый добрый алгоритм А* а не пути или навмеш. Ибо для двух последних очень не очевидно как быстро рассчитывать в каком поинте\треугольнике находится бот, при его смещении например взрывом или при таране другим ботом.&lt;br /&gt;&lt;br /&gt;Собсна в редакторе они выглядят пока вот так (цветом показываются разные установленные флаги):&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/Sj-jYd5hxyI/AAAAAAAAAJQ/gGC_mq6MzPA/s1600-h/EdLimiters.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5350174523077543714" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 210px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/Sj-jYd5hxyI/AAAAAAAAAJQ/gGC_mq6MzPA/s320/EdLimiters.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6844716798037553943?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6844716798037553943/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6844716798037553943' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6844716798037553943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6844716798037553943'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/06/blog-post_22.html' title='Лимитеры'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/Sj-jYd5hxyI/AAAAAAAAAJQ/gGC_mq6MzPA/s72-c/EdLimiters.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-455894547640458173</id><published>2009-06-06T05:54:00.001-07:00</published><updated>2009-06-06T05:54:46.074-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='сайт'/><title type='text'>Работа ссылок и картинок востановлена</title><content type='html'>Всё, наконец-то переехал на новый хостинг. Теперь все ссылки снова будут работать, а картинки - отображаться :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-455894547640458173?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/455894547640458173/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=455894547640458173' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/455894547640458173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/455894547640458173'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/06/blog-post.html' title='Работа ссылок и картинок востановлена'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3322218142593793801</id><published>2009-05-23T02:31:00.000-07:00</published><updated>2009-05-23T02:52:06.447-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='УРОВНИ'/><title type='text'>Набросок кусочка уровня "Junkyard"</title><content type='html'>На днях решил проверить на что способен мой редактор. Закинул в движок несколько моделей и собрал из них небольшой участок уровня "Свалка". Ниже можно увидеть пару видео с результата. Собственно этот прототип позволил выделить несколько проблем:&lt;br /&gt;1) Робот часто задевает углы и спотыкается о неровности пола. С этим придётся чтото делать, т.к. раздражает ужасно.&lt;br /&gt;2) Необходимо ввести в движок дополнительную физ геометрию, которая будет реагировать только на игрока и врагов. Ей нужно будет обтягивать все участки с которых игрок может упасть в пропасть, а также участки куда по идее игрок заезжать не должен.&lt;br /&gt;3) поиск пути для роботов скорее всего надо будeт делать с помощью Paths а не AStar. Это позволит ввести более интеллектуальных врагов по средством добавление дополнительной информации о уровне в Path Points.&lt;br /&gt;&lt;br /&gt;Видео с геймплея движка:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/F5OeHJZ7EN0&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/F5OeHJZ7EN0&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Видео с редактора уровней:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0Jy_TCv_hLw&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/0Jy_TCv_hLw&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;К сожалению показать физ геометрию уровня получилось плохо (из-за низкого разрешения видео), поэтому покажу отдельным скриншотом:&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/ShfGRrdPAfI/AAAAAAAAAJI/RiXNm4Tb0OI/s1600-h/junkyard_phys.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5338953890296431090" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 210px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/ShfGRrdPAfI/AAAAAAAAAJI/RiXNm4Tb0OI/s320/junkyard_phys.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3322218142593793801?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3322218142593793801/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3322218142593793801' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3322218142593793801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3322218142593793801'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/05/junkyard.html' title='Набросок кусочка уровня &quot;Junkyard&quot;'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/ShfGRrdPAfI/AAAAAAAAAJI/RiXNm4Tb0OI/s72-c/junkyard_phys.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-1327228589615451043</id><published>2009-05-21T04:51:00.000-07:00</published><updated>2009-05-21T04:52:31.941-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Сериализация'/><title type='text'>Сериализация мира</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;&lt;p&gt;Наконец то я отладил сериализацию (покрайней мере основных объектов). Последняя ошибка, которую я искал дня два была крайне банальной. Я перерыл по пятьсот раз все коды загрузчиков и отгрузчиков, но так и не мог понять почему периодически в случайном месте файла байты при загрузки съезжают. Не мог понять пока не додумался проверить способ открытия файла.. фак, я бинарный файл открывал как текстовый (!!!). И самое прикольное - периодически уровень грузился нормально )))) &lt;/p&gt;&lt;p&gt;Вообщем поставил я бинарный доступ - и сразу всё заработало как надо.&lt;/p&gt;&lt;p&gt;Такие дела, господа. Не делайте глупых ошибок :)&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/ShVAYbAGVtI/AAAAAAAAAJA/gXEIoFSkLCM/s1600-h/junkyard.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 222px;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/ShVAYbAGVtI/AAAAAAAAAJA/gXEIoFSkLCM/s320/junkyard.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5338243721626801874" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-1327228589615451043?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/1327228589615451043/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=1327228589615451043' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1327228589615451043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1327228589615451043'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/05/blog-post_21.html' title='Сериализация мира'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/ShVAYbAGVtI/AAAAAAAAAJA/gXEIoFSkLCM/s72-c/junkyard.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6155103916694675307</id><published>2009-05-13T03:29:00.000-07:00</published><updated>2009-05-13T03:31:29.772-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Модели: тайлы уровней</title><content type='html'>Мир в игре будет тайловый. Т.е. собираться из отдельных мелких (и не очень) объектов в редакторе. Плюсов из этого подхода довольно таки много – большое разнообразие уровней, большая детализация. Также считаю огромным плюсом возможность управлять детализацией – в зависимости от настроек не загружать объекты, помеченные как «только для высокой детализации» (ну например дополнительный мусор, второстепенные элементы уровня и т.д.). Минусы конечно тоже есть- большее количество DIP. Но учитывая наклон камеры и деферред шейдинг я не думаю что это будет сильно влиять на производительность )&lt;br /&gt;&lt;br /&gt;Ещё конечно придётся сделать в редакторе функции выравнивания объектов, подгонки друг к другу и убирания зазоров между ними, иначе зашьёшься выравнивать всё в ручную…&lt;br /&gt;&lt;br /&gt;Начал работать над тайлами первых уровней – «катакомбы» и «район старой свалки».&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SgqhNX8D7-I/AAAAAAAAAI4/dwl1xBZBj4Q/s1600-h/cat1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5335253959710076898" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 240px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SgqhNX8D7-I/AAAAAAAAAI4/dwl1xBZBj4Q/s320/cat1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SgqhNEBbdkI/AAAAAAAAAIw/VcfEUaO0I98/s1600-h/cat2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5335253954363881026" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 207px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SgqhNEBbdkI/AAAAAAAAAIw/VcfEUaO0I98/s320/cat2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SgqhNNaiEPI/AAAAAAAAAIo/-TWhTtiQuAw/s1600-h/cat3.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5335253956885090546" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 229px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SgqhNNaiEPI/AAAAAAAAAIo/-TWhTtiQuAw/s320/cat3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SgqhM6ii7XI/AAAAAAAAAIg/EZJ7ULioRaI/s1600-h/junk1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5335253951818427762" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 200px" alt="" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SgqhM6ii7XI/AAAAAAAAAIg/EZJ7ULioRaI/s320/junk1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Довольно долго подбирал тектуру поверхностей свалки, такую, чтобы на ней не терялись активные объекты. Вроде не плохо смотрится:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SgqhMwTs9GI/AAAAAAAAAIY/aYOfu3vNzWQ/s1600-h/junk2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5335253949071815778" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 217px" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SgqhMwTs9GI/AAAAAAAAAIY/aYOfu3vNzWQ/s320/junk2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6155103916694675307?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6155103916694675307/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6155103916694675307' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6155103916694675307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6155103916694675307'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/05/blog-post.html' title='Модели: тайлы уровней'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SgqhNX8D7-I/AAAAAAAAAI4/dwl1xBZBj4Q/s72-c/cat1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7755209102769246540</id><published>2009-04-23T04:16:00.000-07:00</published><updated>2009-04-23T04:20:35.506-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ФИЗИКА'/><title type='text'>Подводные камни физикса</title><content type='html'>Занимаюсь своим редактором. Реализовываю перемещение и поворот объектов. Перемещение работает отлично а вот поворот начал давать на статических объектах интересный глюк – после большого количества поворотов шейпы статического объекта начали не совпадать с их матрицей поворота (та что возвращается функцией getGlobalOrientation).&lt;br /&gt;&lt;br /&gt;Вот в исходном состоянии (оранжевыми линиями показано положение физической оболочки):&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SfBOe_O7OzI/AAAAAAAAAIQ/QBf43lIhYYQ/s1600-h/phys1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5327844653456374578" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 210px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SfBOe_O7OzI/AAAAAAAAAIQ/QBf43lIhYYQ/s320/phys1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;А вот после большого количества поворотов:&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SfBOe7Z5RWI/AAAAAAAAAII/r1yU2y9ypKI/s1600-h/phys2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5327844652428641634" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 210px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SfBOe7Z5RWI/AAAAAAAAAII/r1yU2y9ypKI/s320/phys2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Что примечательно – при единичных поворотах – всё нормально. При простом перемещении такого глюка вообще замечено не было. Сначала я думал что это из-за накоплении ошибки в матрице - ортонормировал её, но проблема не исчезала… тем более было странно что на динамических объектах такого глюка не возникало! Начал курить доки и вот что я заметил:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SfBOeqCKZiI/AAAAAAAAAIA/FU2tGv9-7Ps/s1600-h/phys4.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5327844647765698082" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 191px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SfBOeqCKZiI/AAAAAAAAAIA/FU2tGv9-7Ps/s320/phys4.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Вы видите маленькое неприметное слово «dynamic»? Вот и я его заметил только после шестой зачитки документации. Начал гуглить проблему – оказывается у многих такие глюки замечены – на официальном сайте нвидии заметил 3 подобные темы. К слову которые остались без ответа. Вообщем после на официальном сайте нашёл мелким шрифтом надпись в FAQ что статические объекты НЕЛЬЗЯ двигать после их создания, т.к. они там очень хитро оптимизируются и при их передвижении придётся много чего перерасчитывать.&lt;br /&gt;Решение проблемы было простое – при создании NxActor в редакторе все статические объекты создаются как динамические с флагом NX_BF_KINEMATIC. После этого глюки волшебном образом исчезли! Объекты можно вертеть сколько хочешь и они не рассинхронизируются со своими физическими оболочками :)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SfBOejXpgHI/AAAAAAAAAH4/SmP_9jNYV0I/s1600-h/phys3.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5327844645976768626" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 210px" alt="" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SfBOejXpgHI/AAAAAAAAAH4/SmP_9jNYV0I/s320/phys3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;А теперь несколько риторических вопросов:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Почему в документации нет никаких Warling! крупным красным шрифтом насчёт всего этого? &lt;/li&gt;&lt;li&gt;Почему вообще библиотека физикса позволяет мне двигать и вращать статические объекты если это приводит к глюкам? Сэкономили на одной проверке if-ом? &lt;/li&gt;&lt;li&gt;Почему мне не дают возможности «перерасчитывать чегото там» или отключать всю эту оптимизацию статических объектов по моему желанию? Ведь передвижение статических объектов в редакторе уровня – думаю обычная и часто встречающаяся задача.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7755209102769246540?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7755209102769246540/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7755209102769246540' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7755209102769246540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7755209102769246540'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/04/blog-post_23.html' title='Подводные камни физикса'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SfBOe_O7OzI/AAAAAAAAAIQ/QBf43lIhYYQ/s72-c/phys1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3610716654704485106</id><published>2009-04-19T14:24:00.000-07:00</published><updated>2009-04-19T14:28:05.551-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TOOLS'/><title type='text'>Редактор уровней</title><content type='html'>Пару недель назад начал неспешно работать над редактором уровней. Вспоминая редакторы от прошлых моих игр, я твёрдо решил, что в этот раз он будет более-менее адекватным и по стилю управления\редактирования объектами будет похож на обычный 3d редактор (читай – 3д макс).&lt;br /&gt;&lt;br /&gt;В былые то годы, мои тулузы для клепания уровней отличались замысловатым функционалом, причудливыми Ынженерными решениями типа 3d курсора и убийственным количеством горячих клавиш. Но даже в них я умудрялся как то клепать вполне сносные уровни ))&lt;br /&gt;&lt;br /&gt;Делать стандартные элементы 3д редактора к удивлению оказалось весьма интересным занятием. Например манипулятор со стрелочками. Я с таким упоением изучал в 3д максе особенности проекции экранного вектора скорости мыши на оси объекта, воздействие на объект в момент захвата… и сразу же переносил полученные знания прямиком в код своей программы :)&lt;br /&gt;&lt;br /&gt;Что же касается интерфейса редактора – то тут я сохраняю трогательную верность традициям. Схема интерфейса «Вьюпорт-главнаяПанель-инфоПанели» выработанная на редакторе от Scary Nightmare показала себя в боевых условиях весьма не плохо, поэтому я решил её кардинально не менять.&lt;br /&gt;&lt;br /&gt;Выкладываю ниже скрины трёх редакторов, расположенные в хронологическом порядке, эволюция так сказать… сложно сейчас поверить, но редактор для Technozes целиком обходился только горячими клавишами :)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Technozes (2007):&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SeuXCoCS_wI/AAAAAAAAAHw/lAFq5YZgIT4/s1600-h/ÐÐ¾Ð¿Ð¸Ñ+Editor0.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5326517055658327810" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 256px" alt="" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SeuXCoCS_wI/AAAAAAAAAHw/lAFq5YZgIT4/s320/%D0%9A%D0%BE%D0%BF%D0%B8%D1%8F+Editor0.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Scary Nightmare (2008):&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SeuXCTOocPI/AAAAAAAAAHo/c4rhjV68_1o/s1600-h/ÐÐ¾Ð¿Ð¸Ñ+Editor1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5326517050072920306" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 187px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SeuXCTOocPI/AAAAAAAAAHo/c4rhjV68_1o/s320/%D0%9A%D0%BE%D0%BF%D0%B8%D1%8F+Editor1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Robogeddon (2009):&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SeuXCXHiM3I/AAAAAAAAAHg/c0gciHsL_84/s1600-h/ÐÐ¾Ð¿Ð¸Ñ+Editor2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5326517051116893042" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 200px" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SeuXCXHiM3I/AAAAAAAAAHg/c0gciHsL_84/s320/%D0%9A%D0%BE%D0%BF%D0%B8%D1%8F+Editor2.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3610716654704485106?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3610716654704485106/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3610716654704485106' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3610716654704485106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3610716654704485106'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/04/blog-post_19.html' title='Редактор уровней'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SeuXCoCS_wI/AAAAAAAAAHw/lAFq5YZgIT4/s72-c/%D0%9A%D0%BE%D0%BF%D0%B8%D1%8F+Editor0.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6652594871827438806</id><published>2009-04-02T15:56:00.000-07:00</published><updated>2009-04-02T15:57:13.645-07:00</updated><title type='text'>Патч для Демки03. Добавление звука</title><content type='html'>&lt;p&gt;Патч для добавления звуков:  &lt;a style="COLOR: rgb(46,46,92)" href="http://www.anegmetex.com/RoboDev/Demo03_SoundPatch.rar"&gt;http://www.anegmetex.com/RoboDev/Demo03_SoundPatch.rar&lt;/a&gt; (1.8 Мб) &lt;/p&gt;&lt;p&gt;Ставить поверх демки с заменой файлов.&lt;/p&gt;&lt;p&gt;Отпишите пожалуйста работает ли у вас нормально звук.&lt;/p&gt;&lt;p&gt;Если самой демки03 у вас нет, то вот ссылка:  &lt;a style="COLOR: rgb(46,46,92)" href="http://www.anegmetex.com/RoboDev/Demo03.rar"&gt;http://www.anegmetex.com/RoboDev/Demo03.rar&lt;/a&gt; (14.8 Мб)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Превьюшка на youtube: &lt;/p&gt;&lt;p&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/rAhNfnoFFis&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/rAhNfnoFFis&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6652594871827438806?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6652594871827438806/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6652594871827438806' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6652594871827438806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6652594871827438806'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/04/03.html' title='Патч для Демки03. Добавление звука'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-8895340607499151822</id><published>2009-04-01T14:41:00.001-07:00</published><updated>2009-04-01T14:41:53.566-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Звук'/><title type='text'>Звуковой модуль. Девять кругов ада.</title><content type='html'>Собственно две последних недели были потрачены не зря. За это время я пришил к движку поддержку звука на основе библиотечки Audiere. И скажу я вам это было весьма не лёгким занятием :) Траблов было не много, а очень много.&lt;br /&gt;&lt;br /&gt;Ну для начала после приделывания  звуковых эффектов приложения начало самопроизвольно падать во внутренней audiere.dll. Разматывая стек в дебаг-режиме я обнаружил что эти падения связаны с тем, что звуковой буфер самостоятельно может приравняться к NULL. От чего это происходит – понять так и не удалось, проблему же решил просто – при обнаружении NULL звуковой буфер перебиндивается к нужному sound source, тем самым восстанавливая указатель.&lt;br /&gt;&lt;br /&gt;Далее я случайно заметил что память у меня подтекает. И сурово так – 1-2 метра на 10 свежедобавленных роботов. Начал гуглить проблему – конечно весь интернет был усеян об течках памяти в аудиере. Решения проблемы не было. И вот когда я уже начал подумывать об смене саунд-движка – я наткнулся на одинокий пост на каком то буржуйском форуме, где какойто умелец пересобрал dll аудиера и вроде как пофиксел проблему с утечками. Я конечно её сразу скачал и начал тестировать – и, о чудо! Эти кошмарные утечки действительно прекратились :)&lt;br /&gt;&lt;br /&gt;Но это было только начало мучений. Потом я начал прикручивать Sounds Streams – это новая сущность моего движка, позволяющие эмулировать 3d звук с помощью изменения Volume, Pan и Pitch (сам audiere 3д звук не умеет). Особенность их в том что они ПОСТОЯННО должны менять pitch. И вот тут началась жесть :)&lt;br /&gt;&lt;br /&gt;При большом количестве роботов находящихся рядом и синхронно проигрывающие один и тот же саунд мотора – звук в колонках начал трещать. И заметно так, с надрывом. Вот что я тут не делал: и затухатие дальних источников, и интеллектуальное отсечение не важных звуков, и настройки самого звука, всё было бестолку. Решение оказалось простым – я забыл что отключил аппаратное ускорение звука в системе. Всего навсего )&lt;br /&gt;Поставил ускорение на максимум – никаких щелчков и хрипения колонок :)&lt;br /&gt;Но всю эту хитромудрую систему я оставил, всё таки существенно снижает нагрузку на проц.&lt;br /&gt;&lt;br /&gt;Вообщем что в итоге за эти две недели:&lt;br /&gt;1) Прикрутил поддержку как управляемых звуков (Sound Streams) так и нет (Sound Effects). Различие между ними в том, что стримы можно контролировать на всём протяжении их работы, а на эффекты после их запуска уже повлиять никак нельзя. Вот такой оптимизейшн.&lt;br /&gt;2) Сделал самопальную поддержку 3D звука.&lt;br /&gt;3) Сделал наконец то Collision Report физики с поддержкой проталкивания информации по всех иерархии объектов от agePhysicsObject до высокоуровневых ageDynObject и ageActor. Это всё надо для того что когда например бочка падает – проигрывался звук падения бочки )&lt;br /&gt;4) Сделал архиудобную систему загрузки и проигрывания звуков - Sound Mapper. (правда надо её будет помониторить в VTunes на предмет оверхеда производительности… но на глаз с фпс пока всё вроде в полном порядке, никаких проседаний не замечено)&lt;br /&gt;&lt;br /&gt;Вообще надо сказать API у Audiere весьма приятный. Если бы он не был таким удобным я бы уже на середине своих страданий забил бы на него :)&lt;br /&gt;&lt;br /&gt;Видео же со звуком пока НЕ будет. На днях выпущу звуковой патч для демки03, тогда и видео выложу.&lt;br /&gt;&lt;br /&gt;Offtopic&lt;br /&gt;В последнее время стал замечать, что во время отладки игры, я пока не завалю 3-4 волны роботов не отключаю игру, хотя это и не требовалось для отладки фичи… странно, к чему бы это…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-8895340607499151822?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/8895340607499151822/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=8895340607499151822' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8895340607499151822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8895340607499151822'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/04/blog-post.html' title='Звуковой модуль. Девять кругов ада.'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-24599442393905394</id><published>2009-03-22T14:16:00.000-07:00</published><updated>2009-03-23T06:04:05.342-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ДЕМО'/><title type='text'>Demo03. Разрушение роботов.</title><content type='html'>Ну вот. Вроде подшлифовал я систему повреждений, жизни объектов и снаряды. Теперь можна нормально кромсать роботов :)&lt;br /&gt;&lt;br /&gt;АИ правда пока нет. Займусь им в скором времени. А пока – только жестокое убийство невинных роботов )&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ссылка:&lt;/strong&gt; &lt;a style="COLOR: rgb(46,46,92)" href="http://www.anegmetex.com/RoboDev/Demo03.rar"&gt;http://www.anegmetex.com/RoboDev/Demo03.rar&lt;/a&gt; (14.8 Мб)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Для запуска требуются установленные дрова физикса не менее 2.7.2 версии.&lt;br /&gt;&lt;/strong&gt;Убедится в его наличии можно проверив существование папки C:\Program Files\AGEIA Technologies\v2.7.2&lt;br /&gt;Управление:&lt;br /&gt;WASD - перемещение&lt;br /&gt;Mышь – наведение и стрельба&lt;br /&gt;ENTER – добавить ещё 5 врагов&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ожидаемая обратная связь:&lt;/strong&gt;&lt;br /&gt;- запускаемость&lt;br /&gt;- вашу конфигурацию и фпс (+ желательно разрешение экрана и кол-во заспавненых роботов).&lt;br /&gt;- баги\глюки&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;опционально:&lt;/strong&gt;&lt;br /&gt;- Критика&lt;br /&gt;- Слова поддержки&lt;br /&gt;- Плевки&lt;br /&gt;- Тухлые помидоры&lt;br /&gt;- Караваны&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;скрин:&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/Scaq3NQmZDI/AAAAAAAAAHA/0IfQvigR06o/s1600-h/Demo03.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5316124275586262066" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 211px" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Scaq3NQmZDI/AAAAAAAAAHA/0IfQvigR06o/s320/Demo03.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;youtube:&lt;/strong&gt;&lt;br /&gt;&lt;embed src="http://www.youtube.com/v/fNe6aa8_98U&amp;amp;hl=" width="480" height="295" type="application/x-shockwave-flash" fs="1" allowfullscreen="true" allowscriptaccess="always"&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-24599442393905394?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/24599442393905394/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=24599442393905394' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/24599442393905394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/24599442393905394'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/03/demo03.html' title='Demo03. Разрушение роботов.'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/Scaq3NQmZDI/AAAAAAAAAHA/0IfQvigR06o/s72-c/Demo03.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6121520038029052745</id><published>2009-03-17T12:35:00.000-07:00</published><updated>2009-03-17T12:37:43.039-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TOOLS'/><title type='text'>Православный редактор объектов, созданный всего за 3 часа</title><content type='html'>Инди-разработка требует креативных решений. У меня нет времени и сил изобретать велосипеды и делать всё так, как принято в индустрии. Поэтому часто приходится выкручиваться :)&lt;br /&gt;Вот взять например редактор объектов. Нужен ли он? В проекте сложней крестиков-ноликов – обязательно. В слепую править сотни параметров, потом грузить игру и смотреть что получилось – это не достойно настоящих джедаев. Однако при ближайшем рассмотрении его создание должно было бы затянутся на месяцы: ведь в нём будет куча диалогов, в них дофига контролов, связанных с параметрами объектов. И это всё богатство придётся держать в актуальном состоянии на всём протяжении разработки! Ведь создаётся он не под готовый движок, и новые параметры у объектов будут появляться с завидной регулярностью.&lt;br /&gt;&lt;br /&gt;Ясно дело что такой путь не для меня, разработчика-одиночки. А теперь давайте подумаем: а что собственно требуется от движка игры? Правильно, только отображать изменения в реальном времени. А теперь внимание вопрос: “Накой фиг нам создавать тучи диалогов с параметрами если все данные в игре лежат в православном формате XML и править его очень удобно с помощью программы XMLNotepad??”. Вот тут то ко мне пришла конгениальная мысль – пусть мы будем править все данные в удобном редакторе&lt;br /&gt;XMLNotepad, а наша программка пусть отслеживает все изменения ресурсов для редактируемого объекта и если время изменения файла поменялась – перегрузить изменённые ресурсы. Достаточно просто сохранить файл (нажать CTRL+S), и результат изменений сразу отобразится во вьюпорте!&lt;br /&gt;&lt;br /&gt;Причём метод позволяет добиться такой функциональности, которой не располагают даже многие коммерческие движки:&lt;br /&gt;- можно в реальном времни текстурить объекты в фотошопе и сразу видеть финальный результат в движке!&lt;br /&gt;- можно менять сетку (например корректировать нормали) объекта и видеть сразу результат!&lt;br /&gt;&lt;br /&gt;Вообщем этот метод даёт огромный функционал инди-разработчику, требуя затратить минимум времени для его реализации.&lt;br /&gt;&lt;br /&gt;Вот полноразмерное видео такого редактора (20mb в разрешении 1680x1050):&lt;br /&gt;&lt;a href="http://depositfiles.com/files/6qz6z31gf"&gt;http://depositfiles.com/files/6qz6z31gf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Превьюшка на youtube:&lt;br /&gt;&lt;embed src="http://www.youtube.com/v/oKv8k2_L04c&amp;amp;hl=" fs="1" width="425" height="344" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always"&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6121520038029052745?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6121520038029052745/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6121520038029052745' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6121520038029052745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6121520038029052745'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/03/3_17.html' title='Православный редактор объектов, созданный всего за 3 часа'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-4614620857722494966</id><published>2009-03-15T17:42:00.000-07:00</published><updated>2009-03-15T17:54:20.595-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Новые модели</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Georgia;color:black"&gt;Что-то давно не выкладывал я моделей в блог. Многие наверно думают что я только и делаю что движок пишу, однако ж в перерывах я ещё стараюсь не забывать и об арте. &lt;/span&gt;Приходится то обо всех аспектах игры заботится. Иначе что толку от движка если его нечем будет набить? :)&lt;span style="font-family:Georgia;color:black"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Вот некоторые из новых моделек:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Некий усилитель… странные сарайчики с трубами и электричеством&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sb2ikQNGHtI/AAAAAAAAAGg/aNXqZYMUQbE/s320/Amplifer.jpg" style="cursor:pointer; cursor:hand;width: 320px; height: 240px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5313581879075938002" /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/Sb2ikgpIfDI/AAAAAAAAAGo/qaqWwI3JbCM/s1600-h/Van.jpg"&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;p class="MsoNormal"&gt;Вагон для перевозки мусора для локации «свалка»&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/Sb2ikgpIfDI/AAAAAAAAAGo/qaqWwI3JbCM/s1600-h/Van.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/Sb2ikgpIfDI/AAAAAAAAAGo/qaqWwI3JbCM/s320/Van.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5313581883488500786" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238); "&gt;&lt;div style=""&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div&gt;Погрузчик мусора для локации «свалка»&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src="http://3.bp.blogspot.com/_QsaKBzHSLfk/Sb2ik21s7QI/AAAAAAAAAGw/RVAsPvo8oeI/s320/Crane1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5313581889446800642" style="cursor: pointer; width: 320px; height: 222px; " /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sb2ik-0eLYI/AAAAAAAAAG4/-0Q_d-GSZxk/s1600-h/Crane2.jpg"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sb2ik-0eLYI/AAAAAAAAAG4/-0Q_d-GSZxk/s1600-h/Crane2.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_QsaKBzHSLfk/Sb2ik-0eLYI/AAAAAAAAAG4/-0Q_d-GSZxk/s320/Crane2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5313581891589123458" style="cursor: pointer; width: 320px; height: 306px; " /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-4614620857722494966?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/4614620857722494966/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=4614620857722494966' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4614620857722494966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4614620857722494966'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/03/blog-post_15.html' title='Новые модели'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/Sb2ikQNGHtI/AAAAAAAAAGg/aNXqZYMUQbE/s72-c/Amplifer.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-47139596012468888</id><published>2009-03-11T11:47:00.000-07:00</published><updated>2009-03-11T11:48:25.502-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ГЕЙМПЛЕЙ'/><category scheme='http://www.blogger.com/atom/ns#' term='БОЕВАЯ СИСТЕМА'/><title type='text'>Геймплей: боевая система</title><content type='html'>&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;&lt;p&gt;Насчёт геймплейной стороны битв пока ещё не очень ясно, но я провожу тесты, смотрю как лучше сделать. Очень часто то что хорошо выглядит на бумаге в реале вообще получается шлаком… и наоборот. Вообщем работа идёт ;-)&lt;/p&gt;&lt;p&gt;Вот заснял расправу над роботами:&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1RM6xkuXr1g&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/1RM6xkuXr1g&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-47139596012468888?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/47139596012468888/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=47139596012468888' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/47139596012468888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/47139596012468888'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/03/blog-post.html' title='Геймплей: боевая система'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-2097751287598974746</id><published>2009-03-01T15:35:00.001-08:00</published><updated>2009-03-01T15:37:56.112-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ДЕМО'/><title type='text'>Патч для Демки02</title><content type='html'>&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Скачайте патч(~500 kb)&lt;/span&gt;: http://www.anegmetex.com/RoboDev/Demo02_Patch.rar  &lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Исправлено (вроде как): &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- нестабильность подвески при низких ФПС &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- вылет асcерта с agePointerArray &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- вылет при зажатом CTRL  (PhysXCore.dll Access violation) &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- задний ход прикручен снова  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Добавлено: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- постоянное слежение за роботом (ака CTRL). Поставте в настройках единицу у параметра CameraTracking. Если будет сильно трясти камеру можно ещё поставить единицу у параметра  CameraPosInterpolation &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;- Можна нажать на пробел и поджечь всех роботов 8-)&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-2097751287598974746?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/2097751287598974746/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=2097751287598974746' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2097751287598974746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2097751287598974746'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/03/02.html' title='Патч для Демки02'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3980007301686141144</id><published>2009-02-28T06:24:00.000-08:00</published><updated>2009-02-28T06:29:14.328-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ДЕМО'/><title type='text'>Демка 02. Наведение, огонь и движение роботов по вейпоинтам</title><content type='html'>&lt;span class="Apple-style-span"  style=" ;font-family:'Times New Roman';"&gt;&lt;div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; width: auto; font: normal normal normal 100%/normal Georgia, serif; text-align: left; "&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Всем привет! Вот и добрался я до второй демки. Хотелось бы от вас услышать следующий фидбек: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- запускаемость&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- вашу конфигурацию и фпс (+ разрешение экрана на котором запускалось).&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- удобство управления роботом (оно было существенно переработано с прошлой демы)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- удобство прицеливания по движущимся роботам (чтобы боты начали двигаться жмите M)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- устойчивость роботов. Они не должны переворачиваться. Я провёл дофига времени добиваясь того, чтобы роботы в любом случае  вставали на колёса.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- критика :)  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Разрешение экрана и другие настройки можно подправить в Settings.xml&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; font-weight: bold; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Что изменилось с предыдущей версии:&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- много графических улучшений (тени, DOF, Bloom, Reflections, Soft Particles...)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- переработано управление роботом, добавлено прицеливание и огонь (пока к сожалению убивать низзя)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- добавлена устойчивость роботам&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- добавлены боты, простейшие движение по контрольным точкам (пока без обхода препятствий)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- партиклы&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;- много внутренней работы, которая не видна снаружи :)  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; font-weight: bold; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Демка (13.4 мб)&lt;/span&gt;: http://www.anegmetex.com/RoboDev/Demo02_AimFireAndBotMove.rar &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; font-weight: bold; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Для запуска требуются установленные дрова физикса не менее 2.7.2 версии. &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Убедится в его наличии можно проверив существование папки C:\Program Files\AGEIA Technologies\v2.7.2  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Также желательно наличие третьих шейдеров. Если таковых нет – скачайте патч (http://www.anegmetex.com/RoboDev/ShaderModel_2.0_patch.rar) и распакуйте в папку Data\Shaders\.   &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; font-weight: bold; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Управление в демке:&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;A-D – разворот робота&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;W-S – передний и задний ход робота (задний ход чёто в последний момент отвалился...)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Мышка – управление прицелом&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Левый Ctrl – установить камеру в позади робота&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;M – добавить 10 точек вейпоинтов каждому боту &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;L – Разфигачить всех роботов &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 24px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SalIvDmsDUI/AAAAAAAAAGQ/ejIBwI-n9Pg/s1600-h/Demo02_AimFireAndBotMove.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SalIvDmsDUI/AAAAAAAAAGQ/ejIBwI-n9Pg/s320/Demo02_AimFireAndBotMove.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5307853609091468610" style="cursor: pointer; width: 320px; height: 240px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; width: auto; font: normal normal normal 100%/normal Georgia, serif; text-align: left; "&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; width: auto; font: normal normal normal 100%/normal Georgia, serif; text-align: left; "&gt;&lt;span class="Apple-style-span"   style="  white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/IuPraWkevPo&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/IuPraWkevPo&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3980007301686141144?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3980007301686141144/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3980007301686141144' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3980007301686141144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3980007301686141144'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/02/02.html' title='Демка 02. Наведение, огонь и движение роботов по вейпоинтам'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SalIvDmsDUI/AAAAAAAAAGQ/ejIBwI-n9Pg/s72-c/Demo02_AimFireAndBotMove.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6752165642557142855</id><published>2009-02-17T12:11:00.000-08:00</published><updated>2009-02-17T12:13:58.962-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ПРОМО'/><title type='text'>Название проекта</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;"Как вы яхту назовёте - так она и поплывёт" - любил говаривать всеми известный капитан. Почти пол-года разработки этот проект был безымянным, и носил лишь кодовое словосочетание - "игра про роботов". Я неоднократно задумывался о названии, но так и не находил ничего достойного. Однако сейчас мне кажется я нашёл именно то слово, которое наиболее полно отражает весь характер геймплея игры. &lt;br /&gt;Итак отныне этот проект будет носить гордое имя:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SZsadVjN7nI/AAAAAAAAAF4/P0wbIB9sx1I/s1600-h/WIP2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 191px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SZsadVjN7nI/AAAAAAAAAF4/P0wbIB9sx1I/s320/WIP2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5303862077462277746" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6752165642557142855?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6752165642557142855/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6752165642557142855' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6752165642557142855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6752165642557142855'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/02/blog-post_638.html' title='Название проекта'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SZsadVjN7nI/AAAAAAAAAF4/P0wbIB9sx1I/s72-c/WIP2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6540105914255815583</id><published>2009-02-17T11:51:00.000-08:00</published><updated>2009-02-17T11:52:24.059-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ФИЗИКА'/><title type='text'>Физика: разрушение роботов</title><content type='html'>&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;Вот снял маленький ролик, показывающий разрушение роботов. Хоть пока спец-эффектов и нету, но какое-никакое представление даёт:&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/lX2qUJiHoeg&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/lX2qUJiHoeg&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6540105914255815583?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6540105914255815583/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6540105914255815583' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6540105914255815583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6540105914255815583'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/02/blog-post_17.html' title='Физика: разрушение роботов'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-60652884992760214</id><published>2009-02-10T10:24:00.000-08:00</published><updated>2009-02-10T10:30:26.956-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ИИ'/><title type='text'>ИИ: Езда по сложной местности</title><content type='html'>&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;Вот надоумил меня давеча товарисЧ &lt;b style="color: rgb(0, 0, 0); "&gt;DEN 3D&lt;/b&gt; попробовать робота на холмисто\бугристой местности (&lt;a href="http://www.gamedev.ru/community/robo_game_blog/forum/?id=91289" style="color: rgb(49, 141, 196); "&gt;http://www.gamedev.ru/community/robo_game_blog/forum/?id=91289&lt;/a&gt;) &lt;br /&gt;Собсна как я и ожидал появились проблемы - робот стал переворачиваться и тупить на горках. Однако чуть подправив физическую модель удалось свести эти нежелательные последствия к минимуму. &lt;br /&gt;Вот как он гоняет теперь по неровной (мягко сказано) поверхности. Надеюсь с этим траблов больше не будет:&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);  font-family:Verdana;font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);  font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/quRH4kfoKCk&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/quRH4kfoKCk&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-60652884992760214?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/60652884992760214/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=60652884992760214' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/60652884992760214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/60652884992760214'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/02/blog-post_10.html' title='ИИ: Езда по сложной местности'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-600259949682536888</id><published>2009-02-07T16:48:00.000-08:00</published><updated>2009-02-07T16:54:47.408-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ИИ'/><title type='text'>ИИ: Езда по контрольным точкам</title><content type='html'>&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Начал работать над перемещением ботов. Pеализовал два типа перемещения - танковый стиль езды, и колёсный стиль езды. Различаются они в основном способом разворота. Например танковый может на месте разворачиваться, а колёсный - нет. Ну и ещё парой-тройкой коэффициентов.&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Вот многие говорят - чего сложного, настроишь как в жизни физику и всё. А вот фиг - или мордой начинает вилять, или опрокидывается или ещё чего... А ведь сейчас он ездит всего лишь по ровной гладкой плоскости )  К тому же для удобства потребовались определённые константные значения для параметров робота (как то максимальная скорость, максимальный крутящий момент), не зависящие от суммарной массы робота.&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Поэтому приходится не физичные хаки вводить – гасить крутящие моменты, выравнивать направление скорости по направлению робота (помните как в первой демке робота всё время уводило вправо?), применять специальные разгоняющие импульсы и т.д. и т.п.&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Зато теперь робот ездит прямо, не виляет, не переворачивается… и в тоже время выглядит весьма правдоподобно: его заносит на поворотах, если на полном ходу врезается в препятствие (бочка) – его закручивает, однако он выравнивает направление и продолжает ехать в нужную сторону. Вообщем для ботов сгодится :)&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;А вот для игрока не знаю… возможно для более комфортного управления, придётся написать другой код…&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Танковый стиль езды: &lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/DsfThiANBuk&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/DsfThiANBuk&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Колёсный стиль езды: &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/92AMEskGqWM&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/92AMEskGqWM&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-600259949682536888?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/600259949682536888/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=600259949682536888' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/600259949682536888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/600259949682536888'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/02/blog-post.html' title='ИИ: Езда по контрольным точкам'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6802050323683063631</id><published>2009-01-30T12:00:00.000-08:00</published><updated>2009-01-30T12:05:50.686-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='СИСТЕМА ЧАСТИЦ'/><title type='text'>Рендер: система частиц</title><content type='html'>&lt;div&gt;&lt;p class="MsoNormal"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Работаю над системой частиц. Она и раньше вообщем была, но надо было внедрить её в новый рендер. Кроме того начал проектировать спец-шейдеры для неё. Сделал пробный огонь. Вроде выглядит весьма не плохо, особенно с блумом &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;:)&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;В планах добавить партиклам возможность проигрывать анимационные текстуры (через волюм текстуру), текстуры с нормалом (для эффекта объёмного дыма) и, возможно, использование физичных партиклов от &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;PhysX&lt;/span&gt;. Последнее правда под большим вопросом, ибо довольно сильно грузит систему. Наверно будет использоваться лишь в локальных местах в качестве &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;Wow&lt;/span&gt;-фактора :)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SYNdTQR8fII/AAAAAAAAAFw/hUTyKOLLVJo/s1600-h/ParticlesFire.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 293px; height: 320px;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SYNdTQR8fII/AAAAAAAAAFw/hUTyKOLLVJo/s320/ParticlesFire.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5297180172086967426" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bcwjlz-JNE8&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/bcwjlz-JNE8&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6802050323683063631?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6802050323683063631/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6802050323683063631' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6802050323683063631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6802050323683063631'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/blog-post_30.html' title='Рендер: система частиц'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SYNdTQR8fII/AAAAAAAAAFw/hUTyKOLLVJo/s72-c/ParticlesFire.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-4845961473791478171</id><published>2009-01-24T07:58:00.000-08:00</published><updated>2009-01-24T08:07:23.039-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='ОТРАЖЕНИЯ'/><title type='text'>Рендер: отражения</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Прикрутил я давеча к движку отражения. Конечно фейковые – кубамапа предрасчитана заранее и хранится с файлами уровня. Но так как материалы у меня далеко не зеркальные её фейковость не сильно заметна. А визуальная часть слегка улучшилась. Теперь надеюсь ни кто не будет говорить что всё из пластилина :)&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Рефлекшн в движке можно настраивать очень гибко. Для него выделено аж две карты коэффициентов (одна для Color составляющей, а вторая для Spec составляющей отражения). На производительности шейдера это не сказалось, т.к. спек ведь у меня шёл отдельной текстурой, в его альфе канале хранился коэффициент мощности отражения. Соответственно оставалось ещё два не использованных канала, которые я под рефлекшн и заюзал. Настоящее раздолье для художников по текстурам ))&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Вот примерно такая картина по каналам спек текстуры (power константная, ибо пока менять её не было смысла): &lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SXs62YaBjSI/AAAAAAAAAFo/ZGohW6OvuuY/s1600-h/SpecReflect.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 320px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SXs62YaBjSI/AAAAAAAAAFo/ZGohW6OvuuY/s320/SpecReflect.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5294890492843101474" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;Записал видео с рефлекшеном. Чесно говоря плоховато видно из-за сжатия, но на полу отражения рассмотреть можно: &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);  font-family:Verdana;font-size:12px;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/4vNyq4n6wLo&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/4vNyq4n6wLo&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-4845961473791478171?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/4845961473791478171/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=4845961473791478171' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4845961473791478171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4845961473791478171'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/blog-post_24.html' title='Рендер: отражения'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SXs62YaBjSI/AAAAAAAAAFo/ZGohW6OvuuY/s72-c/SpecReflect.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7550355393086325991</id><published>2009-01-17T07:11:00.000-08:00</published><updated>2009-01-17T07:12:16.753-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ПОСТЭФФЕКТЫ'/><title type='text'>Постэффекты: DOF &amp; Bloom</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;&lt;p&gt;В перерывах между опиливанием игровых объектов прикрутил пару постэффектов. А именно Depth-of-Field и Bloom. Хотя эстетическое восприятие первого эффекта весьма спорно (см скриншот). Ешё ну очччень хочется добавить и SSAO. Очень надеюсь что фреймрейт не умрёт. (а ведь ещё мягкие частицы запланированы…)&lt;/p&gt;&lt;p&gt;Также сделал наконец то отладочную визуализацию камеры. Сделал через функцию D3DXVec3Unproject, т.к. почему то умножение на обратную матрицу WorldViewProj давало неверный результат (почемуто не учитывался fov).&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SXH1NYPBfMI/AAAAAAAAAFA/y2E0kAojhw8/s1600-h/BloomDOF.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SXH1NYPBfMI/AAAAAAAAAFA/y2E0kAojhw8/s320/BloomDOF.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5292280647329610946" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7550355393086325991?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7550355393086325991/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7550355393086325991' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7550355393086325991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7550355393086325991'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/dof-bloom.html' title='Постэффекты: DOF &amp; Bloom'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SXH1NYPBfMI/AAAAAAAAAFA/y2E0kAojhw8/s72-c/BloomDOF.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7977648291918838176</id><published>2009-01-10T08:41:00.000-08:00</published><updated>2009-01-10T08:43:35.853-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ДЕМО'/><title type='text'>Демка управления роботом</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;А вот собственно и демка :) &lt;br /&gt;Потестите пожалуйста на запускаемость и удобство управления роботом. Также было бы не плохо вашу конфигурацию и фпс.&lt;/p&gt;&lt;p&gt;Разрешение экрана и другие настройки можно подправить в Settings.xml &lt;br /&gt;Параметр CameraPosInterpolation – определяет сглаженность изменения позиции камеры. При включении почемуто появляются рывки… поэтому по дефолту пока отключено.&lt;/p&gt;&lt;p&gt;&lt;b style="color: rgb(0, 0, 0); "&gt;Демка (6.7 мб)&lt;/b&gt;:&lt;/p&gt;&lt;p&gt; &lt;a href="http://www.anegmetex.com/RoboDev/Demo01_RobotControl.rar" style="color: rgb(46, 46, 92); "&gt;http://www.anegmetex.com/RoboDev/Demo01_RobotControl.rar&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="color: rgb(0, 0, 0); "&gt;Для запуска требуются установленные дрова физикса не менее 2.7.2 версии. &lt;/b&gt;&lt;br /&gt;Также желательно наличие третьих шейдеров. &lt;br /&gt;Если таковых нет – скачайте патч (&lt;a href="http://www.anegmetex.com/RoboDev/ShaderModel_2.0_patch.rar" style="color: rgb(46, 46, 92); "&gt;http://www.anegmetex.com/RoboDev/ShaderModel_2.0_patch.rar&lt;/a&gt;) и распакуйте в папку Data\Shaders\.&lt;/p&gt;&lt;p&gt;&lt;b style="color: rgb(0, 0, 0); "&gt;Управление в демке: &lt;/b&gt;&lt;br /&gt;A-D – разворот робота &lt;br /&gt;W-S – передний и задний ход робота &lt;br /&gt;Мышка – управление прицелом &lt;br /&gt;Левый Ctrl – установить камеру в позади робота &lt;br /&gt;P – поднять вверх робота &lt;br /&gt;Пробел – добавить бочку в уровень &lt;br /&gt;F1 – вывод отладочной информации физ движка&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SWjP6pyHa8I/AAAAAAAAAE4/qicbX4orDwk/s1600-h/Demo01_RobotControl.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SWjP6pyHa8I/AAAAAAAAAE4/qicbX4orDwk/s320/Demo01_RobotControl.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5289706368902065090" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7977648291918838176?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7977648291918838176/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7977648291918838176' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7977648291918838176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7977648291918838176'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/blog-post_10.html' title='Демка управления роботом'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SWjP6pyHa8I/AAAAAAAAAE4/qicbX4orDwk/s72-c/Demo01_RobotControl.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6491628040554355697</id><published>2009-01-08T12:53:00.000-08:00</published><updated>2009-01-08T13:01:46.344-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ТЕСТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ФИЗИКА'/><title type='text'>Это вам не ВАЛЛ-И!</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre;font-family:Arial;font-size:10px;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   white-space: normal; font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;Провожу тесты подвески и гусеничного хода робота. По сути подбираю набор хаков физ двига :)&lt;/p&gt;&lt;p&gt;Вот так балванчик умеет гонять: &lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 0);   white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/UZOhOp6lSAc&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/UZOhOp6lSAc&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SWZoAu8pxeI/AAAAAAAAAEw/7RxERfBhP9I/s1600-h/RobotMove.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 215px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SWZoAu8pxeI/AAAAAAAAAEw/7RxERfBhP9I/s320/RobotMove.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5289029174204941794" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6491628040554355697?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6491628040554355697/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6491628040554355697' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6491628040554355697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6491628040554355697'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/blog-post_08.html' title='Это вам не ВАЛЛ-И!'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SWZoAu8pxeI/AAAAAAAAAEw/7RxERfBhP9I/s72-c/RobotMove.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-5590328957426670421</id><published>2009-01-04T12:01:00.000-08:00</published><updated>2009-01-04T12:02:54.693-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ПРОМО'/><title type='text'>Он скоро заработает ...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SWEV11PWWQI/AAAAAAAAAEo/q1ROjHzBP9Q/s1600-h/SoonWorked.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 205px;" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SWEV11PWWQI/AAAAAAAAAEo/q1ROjHzBP9Q/s320/SoonWorked.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5287531452078381314" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-5590328957426670421?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/5590328957426670421/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=5590328957426670421' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/5590328957426670421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/5590328957426670421'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2009/01/blog-post.html' title='Он скоро заработает ...'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SWEV11PWWQI/AAAAAAAAAEo/q1ROjHzBP9Q/s72-c/SoonWorked.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-4643664905336021818</id><published>2008-12-30T04:15:00.000-08:00</published><updated>2008-12-30T04:16:55.524-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='КЛАСС СЦЕНЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ТЕСТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ИЕРАРХИЯ ОБЪЕКТОВ'/><title type='text'>Lights &amp; shadows test</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;&lt;p&gt;Реализую классы сцены, по принципу, рассказанному в предыдущей серии :) &lt;br /&gt;    &lt;br /&gt;    Не всё оказалось гладким. Точнее всё оказалось грубым и с зазубринами. Для начала неожиданно для себя узнал что стандартный вектор STL переалоцирует всю память, при резервировании. Далее оказалось что этот самый вектор требует ещё и конструктор копии для сложных агрегатных классов. В итоге – два дня на исправление моего ageDynArray (основанного на STL векторе) плюс нудное подписывание конструкторов копий для всех сложных агрегатных классов (коих у меня оказалось 12 штук).  Раньше я ничего не замечал ибо клал в свой ageDynArray только относительно простые классы, для которых компилятор генерирует конструктор копии автоматически. &lt;br /&gt;&lt;br /&gt;    Напоследок была ещё одна весёлая штука – оказалось если и в базовом классе и в классе наследнике есть перегруженный оператор присваивания, то это отнюдь не означает что при его вызове из класса наследника, он вызовется автоматически и в базовом классе. Раньше я с такой ситуацией не сталкивался, поэтому по простоте душевной был уверен что он, как и конструктор, вызовется автоматически. Надо думаю ещё раз Страуструпа почитать на досуге :)&lt;/p&gt;&lt;p&gt;    В итоге, класс сцены, хоть и со скрипом, но заработал. Добавил в него пока DynObjects, StatObjects и источники света. Для тестирования класса собрал небольшую демку, в которой можно добавлять бочки (DynObjects), которые падают на статический камень (StatObjects). Ну ещё источники света можно добавлять.&lt;/p&gt;&lt;p&gt;Вот:&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SVoQ-yj7qoI/AAAAAAAAAEg/52gc8WVPm38/s1600-h/LightAndShadows.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 210px;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SVoQ-yj7qoI/AAAAAAAAAEg/52gc8WVPm38/s320/LightAndShadows.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5285555783583115906" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Df7hx5LRGY8&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Df7hx5LRGY8&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-4643664905336021818?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/4643664905336021818/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=4643664905336021818' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4643664905336021818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4643664905336021818'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/12/lights-shadows-test.html' title='Lights &amp; shadows test'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SVoQ-yj7qoI/AAAAAAAAAEg/52gc8WVPm38/s72-c/LightAndShadows.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-4997745823408098370</id><published>2008-12-22T10:33:00.000-08:00</published><updated>2008-12-22T10:44:00.715-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ИГРОВЫЕ ОБЪЕКТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ИЕРАРХИЯ'/><title type='text'>Иерархия игровых объектов</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;font-family:Verdana;font-size:48px;"&gt;&lt;span class="Apple-style-span"  style="color: rgb(0, 0, 40);  white-space: normal; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; font-size:12px;"&gt;&lt;p&gt;Работаю над иерархией и общей структурой объектов. Сначала в движке планировал разбить иерархию объектов на два класса – сцена и игровой уровень. Предполагалось, что в сцене мы храним сами пулы простых объектов, а в классе уровня – глобальные ссылки на них и пулы сложных объектов, собирающие несколько ссылок на простые объекты. Кроме того, логически, уровнь будет содержать классы конкретной игры, а сцена – более общие классы.&lt;/p&gt;&lt;p&gt;Вот такая была схема:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="code" style="background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(232, 232, 232); background-position: initial initial; "&gt;&lt;table width="100%" cellspacing="2" cellpadding="5"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="color: rgb(0, 0, 40); font-family: Verdana, Arial, sans-serif; font-size: 12px; text-align: justify; "&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; Scene &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Lights      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Particles      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Decals      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SceneObjects &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;}  &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; GameObject &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{           &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;LightsID           &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ParticlesID           &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;DecalsID           &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SceneObjectsID  &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;}  &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; GameLevel &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{           &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ParticlesType      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;DecalsType      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ActorsType      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;StaticsType      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;DynamicsType        &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;LightsID      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ParticlesID      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;DecalsID       &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Actors:GameObject;      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Static:GameObject;      &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Dynamic:GameObject;       &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;}&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Однако, при ближайшем рассмотрении всё пошло пи… короче такая схемка не покатит. И вот почему. Во-первых, отсечение по ок-трии в целях оптимизации надо будет делать в  классе уровня, ибо отсечь один GameObject быстрее чем кучу SceneObjects, Particles и других его составляющих. Во-вторых, сомнительная радость размазывать хранение параметров для типов объекта по двум классам (например партиклы, декалы). В третьих же сериализация опять таки достаётся классу уровня.&lt;/p&gt;&lt;p&gt;Вот таким макаром класс Сцены становится всё худее и худее, а его значимость – всё меньше и меньше.&lt;/p&gt;&lt;p&gt;Вообщем волевым решением я всё перенёс в мега-класс GameScene:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="code" style="background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(232, 232, 232); background-position: initial initial; "&gt;&lt;table width="100%" cellspacing="2" cellpadding="5"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="color: rgb(0, 0, 40); font-family: Verdana, Arial, sans-serif; font-size: 12px; text-align: justify; "&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; ageGameScene: &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;public&lt;/b&gt; ageSingleton&lt;agegamescene&gt; &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{    &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageResourseManager&lt;agetypeinfo&gt;  ActorsType;   &lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageResourseManager&lt;agetypeinfo&gt;  DynObjectsType;   &lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageResourseManager&lt;agetypeinfo&gt;  StatObjectsType;   &lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageResourseManager&lt;agetypeinfo&gt;  StatParticlesType;   &lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageResourseManager&lt;agetypeinfo&gt;  StatDecalsType;     &lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agesceneobject&gt;        SceneObjects;    &lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agecamera&gt;          Cameras;    &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agelight&gt;          Lights;    &lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agedecal&gt;          Decals;    &lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;ageparticleemitter&gt;      Particles;     &lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;ageactor&gt;          Actors;    &lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agedynobject&gt;        DynObjects;    &lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageCDynArray&lt;agestatobject&gt;        StatObjects;      &lt;b class="c" style="color: rgb(136, 153, 136); font-weight: normal; "&gt;&lt;/b&gt;&lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;span class="Apple-style-span" style="color: rgb(136, 153, 136);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;b class="c" style="color: rgb(136, 153, 136); font-weight: normal; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//world objects&lt;/b&gt;   &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      ActorsID;    &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      DynObjectsID;    &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      StatObjectsID;    &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      LightsID;    &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      ParticlesID;    &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ageSimpleArray&lt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;int&lt;/b&gt;&gt;      DecalsID;    &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;int&lt;/b&gt;            &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt; CameraID;  &lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agetypeinfo&gt;&lt;agesceneobject&gt;&lt;agecamera&gt;&lt;agelight&gt;&lt;agedecal&gt;&lt;ageparticleemitter&gt;&lt;ageactor&gt;&lt;agedynobject&gt;&lt;agestatobject&gt;};&lt;/agestatobject&gt;&lt;/agedynobject&gt;&lt;/ageactor&gt;&lt;/ageparticleemitter&gt;&lt;/agedecal&gt;&lt;/agelight&gt;&lt;/agecamera&gt;&lt;/agesceneobject&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/agetypeinfo&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Вот такой жирдяй-класс. В нём же практически вся игра будет :-D&lt;/p&gt;&lt;p&gt;----- &lt;br /&gt;К слову о проектировании. В голове эти все объекты у меня выглядят таким образом :-D &lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SU_d1zrn_HI/AAAAAAAAAEI/aI7oyelWiXU/s1600-h/PaperProj.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 203px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SU_d1zrn_HI/AAAAAAAAAEI/aI7oyelWiXU/s320/PaperProj.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5282684804404870258" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-4997745823408098370?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/4997745823408098370/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=4997745823408098370' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4997745823408098370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/4997745823408098370'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/12/blog-post_22.html' title='Иерархия игровых объектов'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SU_d1zrn_HI/AAAAAAAAAEI/aI7oyelWiXU/s72-c/PaperProj.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-2473580485061250274</id><published>2008-12-19T07:17:00.000-08:00</published><updated>2008-12-20T12:00:04.758-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ТЕСТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ФИЗИКА'/><category scheme='http://www.blogger.com/atom/ns#' term='ИЕРАРХИЯ ОБЪЕКТОВ'/><title type='text'>Физика: первые тесты</title><content type='html'>&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;Чтож пока с рендером я решил завязать. На очереди – иерархия объектов.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="code" style="background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(232, 232, 232); background-position: initial initial; "&gt;&lt;table width="100%" cellspacing="2" cellpadding="5"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="color: rgb(0, 0, 40); font-family: Verdana, Arial, sans-serif; font-size: 12px; text-align: justify; "&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; ageRenderObject &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{ &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;};  &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; agePhysicsObject &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{ &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;};  &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;class&lt;/b&gt; ageSceneObject &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;{   &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;class&lt;/b&gt; ageRenderObject;   &lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;/b&gt;&lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;&lt;b style="color: rgb(0, 84, 207); font-weight: normal; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;class&lt;/b&gt; agePhysicsObject; &lt;/pre&gt;&lt;pre style="color: rgb(0, 0, 0); font-size: 14px; font-family: 'courier new', courier, sans-serif; text-align: left; "&gt;};&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Вот, поднимаясь по иерархии вверх я создал класс ageSceneObject который включает в себя отрисовочный объект ageRenderObject (с которым я работал ранее) а также объект физического движка agePhysicsObject. В нём (ageSceneObject) происходит их синхронизация. Новонаписанный класс agePhysicsObject является просто обёрткой над классом физикса NxActor, и имеет специфический для моего движка функционал. Как например загрузка физической оболочки из файла.&lt;/p&gt;&lt;p&gt;Естественно вручную задавать оболочки это очень плохая идея. Поэтому я потратил пару дней на изучение плагинов и программ для их визуального создания и остановился бесплатном редакторе Scythe (&lt;a href="http://www.physicseditor.com/" style="color: rgb(49, 141, 196); "&gt;http://www.physicseditor.com/&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;Что я могу про него сказать? Хороший, интуитивно понятный редактор и прозрачный формат выходного файла. Конечно для загрузки оболочек можно использовать и их API, однако там очень много лишнего, поэтому я написал свой загрузчик их формата (благо его описание присутствует на их сайте в разделе downloads)&lt;/p&gt;&lt;p&gt;Вот видео того, что получилось: &lt;/p&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Z4Q2Ua-X7Wg&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/Z4Q2Ua-X7Wg&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;И тоже самое но с отладочной информацией: &lt;/p&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/LXtQjLqyIps&amp;amp;hl=ru&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/LXtQjLqyIps&amp;amp;hl=ru&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-2473580485061250274?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/2473580485061250274/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=2473580485061250274' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2473580485061250274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2473580485061250274'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/12/blog-post_19.html' title='Физика: первые тесты'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-2027234670446628702</id><published>2008-12-17T01:27:00.001-08:00</published><updated>2008-12-17T01:29:11.703-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='ТЕНИ'/><category scheme='http://www.blogger.com/atom/ns#' term='PCF'/><category scheme='http://www.blogger.com/atom/ns#' term='ШЕЙДЕРЫ'/><title type='text'>Рендер: да будут тени!</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:12px;"&gt;&lt;p&gt;Ну вот, прикрутил я наконец тени. Не обошлось конечно без проблем (&lt;a href="http://www.gamedev.ru/code/forum/?id=88870" style="color: rgb(49, 141, 196); "&gt;http://www.gamedev.ru/code/forum/?id=88870&lt;/a&gt;), но спасибо форумчанам геймдева, помогли найти кое-какие опечатки в коде :)&lt;/p&gt;&lt;p&gt;Вообще в деферреде оказался один такой жирный минус – большая нагрузка на пиксельные шейдеры. Вот из-за этого и получилось так, что PCF размытие тени ни в какую не влезает по количеству инструкций в шейдеры версии 2.0, так что пока пришлось для тенюшек компилировать пиксельные шейдеры в версию 3.0. Это конечно совсем не айс, так как я всё таки решил поддерживать и 2.0, поэтому в будущем постараюсь как-нибудь упихать, хоть простенькие PCF2x2, в версию 2.0.&lt;/p&gt;&lt;p&gt;Также сделал поддержку объектов с альфа-дырками (см. на рисунке ветхий край ржавого заборчика) и рендинг от них теней.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SUjGJ-TPREI/AAAAAAAAAEA/v_vx-eNvf68/s1600-h/Shadows.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SUjGJ-TPREI/AAAAAAAAAEA/v_vx-eNvf68/s320/Shadows.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5280688437736719426" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-2027234670446628702?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/2027234670446628702/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=2027234670446628702' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2027234670446628702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/2027234670446628702'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/12/blog-post_17.html' title='Рендер: да будут тени!'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SUjGJ-TPREI/AAAAAAAAAEA/v_vx-eNvf68/s72-c/Shadows.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3630473791090248287</id><published>2008-12-07T15:00:00.000-08:00</published><updated>2008-12-20T12:02:11.443-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='ОСВЕЩЕНИЕ'/><title type='text'>Рендер: освещение закончено... вроде</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Освещение закончено. Все типы источников отлажены и работают. Хотя я пока не сделал оптимизации со стенсел-буфером, но думаю это подождёт. Теперь буду прикручивать обратно тени в движок :)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Verdana;font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Точечный: &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QsaKBzHSLfk/STxV7vjbdSI/AAAAAAAAAD4/2U0uq1c2AqI/s1600-h/pointLight.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/STxV7vjbdSI/AAAAAAAAAD4/2U0uq1c2AqI/s320/pointLight.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5277187348237088034" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Направленный: &lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/STxV7vaeF_I/AAAAAAAAADw/fb30DQr8Y-Q/s1600-h/dirLight.jpg"&gt;&lt;/a&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/STxV7vaeF_I/AAAAAAAAADw/fb30DQr8Y-Q/s1600-h/dirLight.jpg" style="text-decoration: none;"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/STxV7vaeF_I/AAAAAAAAADw/fb30DQr8Y-Q/s320/dirLight.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5277187348199512050" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/STxV7fNqLII/AAAAAAAAADo/lBFhiDXV42s/s1600-h/spotLight.jpg"&gt;&lt;/a&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana;font-size:12px;"&gt;Конический: &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/STxV7fNqLII/AAAAAAAAADo/lBFhiDXV42s/s1600-h/spotLight.jpg" style="text-decoration: none;"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/STxV7fNqLII/AAAAAAAAADo/lBFhiDXV42s/s320/spotLight.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5277187343850810498" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3630473791090248287?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3630473791090248287/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3630473791090248287' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3630473791090248287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3630473791090248287'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/12/blog-post.html' title='Рендер: освещение закончено... вроде'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/STxV7vjbdSI/AAAAAAAAAD4/2U0uq1c2AqI/s72-c/pointLight.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-8079529852211022157</id><published>2008-11-24T16:15:00.000-08:00</published><updated>2008-11-24T16:21:50.838-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='КОНСТРУИРОВАНИЕ'/><category scheme='http://www.blogger.com/atom/ns#' term='ДЕТАЛИ'/><category scheme='http://www.blogger.com/atom/ns#' term='РОБОТЫ'/><title type='text'>Принцип модульной конструкции роботов</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;&lt;p&gt;Все роботы в игре будут состоять из следующих частей: &lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Корпус &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Двигательный модуль &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Шасси &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Навесное оборудование&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Некоторых частей естественно может и не быть или наоборот прицеплено несколько. Всё это будет зависеть от их типа и класса робота.&lt;/p&gt;&lt;p&gt;Художник Grizo (aka Snake) сделал рисунок, объясняющий принцип сборки роботов из составных частей.&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SStE1PHFshI/AAAAAAAAADg/lPEsiP4WS5o/s1600-h/modulconstr.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 189px;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SStE1PHFshI/AAAAAAAAADg/lPEsiP4WS5o/s320/modulconstr.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5272383470147318290" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-8079529852211022157?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/8079529852211022157/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=8079529852211022157' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8079529852211022157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8079529852211022157'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/11/blog-post.html' title='Принцип модульной конструкции роботов'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SStE1PHFshI/AAAAAAAAADg/lPEsiP4WS5o/s72-c/modulconstr.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7713784399707151322</id><published>2008-11-24T16:02:00.000-08:00</published><updated>2008-11-24T16:10:54.506-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='ОСВЕЩЕНИЕ'/><category scheme='http://www.blogger.com/atom/ns#' term='Deferred_shading'/><title type='text'>Рендер: deferred освещение</title><content type='html'>&lt;div&gt;&lt;div&gt;Начал делать освещение на деферред. Сделал пока освещение от направленных и точечных источников. Освещение естественно полностью bump-specular. При написании шейдера ГБуфера появилась идея использовать дополнительные карты нормалей для повреждённых деталей и увеличение контрасности бампа (normalFromMap.z/=damage_factor;) соразмерно величине этих повреждений. Вообщем идея интересная и вроде не особо сложная в реализации... покрайней мере пока так кажется :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ещё хочу сказать спасибо тов. Zeux за лекцию R.E.N.D.E.R. (http://www.gamedev.ru/community/gamedev_lecture/articles/r_e_n_de_r) о том, как реализован деферред рендер в Сталкере. Много интересной и полезной информации которой я сразу и воспользовался :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Привожу скрины с текущего билда движка. В сцене действует один направленый источник (белый) и один точечный (красный). &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCmZa8SI/AAAAAAAAADY/i_5dW0exLh4/s1600-h/deferredLight3.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCmZa8SI/AAAAAAAAADY/i_5dW0exLh4/s320/deferredLight3.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5272379301690011938" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCsiOuCI/AAAAAAAAADQ/aMBCu7jqNWo/s1600-h/deferredLight2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCsiOuCI/AAAAAAAAADQ/aMBCu7jqNWo/s320/deferredLight2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5272379303337572386" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCSkXsvI/AAAAAAAAADI/YdsYaMqhvr8/s1600-h/deferredLight1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCSkXsvI/AAAAAAAAADI/YdsYaMqhvr8/s320/deferredLight1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5272379296367227634" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7713784399707151322?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7713784399707151322/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7713784399707151322' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7713784399707151322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7713784399707151322'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/11/deferred.html' title='Рендер: deferred освещение'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SStBCmZa8SI/AAAAAAAAADY/i_5dW0exLh4/s72-c/deferredLight3.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6246685783369136553</id><published>2008-11-17T09:07:00.000-08:00</published><updated>2008-11-17T09:08:43.909-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='Deferred_shading'/><title type='text'>Рендер: Deferred shading</title><content type='html'>&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; "&gt;&lt;p&gt;Да, я делаю именно это :) &lt;br /&gt;Я переписываю рендер на деферед шейдинг. Решение такое было принято отнюдь не из-за желания следовать модным тенденциям, а сугубо суровой необходимостью. &lt;br /&gt;Эта технология я считаю даст большую производительность рендеру, чем если бы я продолжал писать на форварде. &lt;br /&gt;Итак, почему же именно деферед?&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;В игре будет унифицированная модель освещения (Фонг) &lt;br /&gt;&lt;/li&gt;&lt;li&gt;В кадре будет приличное кол-во DIP-ов &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Много точечных (и не очень) источников света &lt;br /&gt;&lt;/li&gt;&lt;li&gt;В кадре отсутствуют полупрозрачные объекты aka стёкла &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Будут пост-эффекты типа SSAO которым всё равно нужны нормали )&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Ну и так, без пункта ещё добавлю, что мороки с дефередом гораздо меньше чем с форвардом: не надо делать списки освещаемых этой лампочкой объектов, нет кучи разных шейдеров... &lt;br /&gt;И лампочки новые добавлять - одно удовольствие :)&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6246685783369136553?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6246685783369136553/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6246685783369136553' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6246685783369136553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6246685783369136553'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/11/deferred-shading.html' title='Рендер: Deferred shading'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-8401876460279747416</id><published>2008-10-30T06:50:00.001-07:00</published><updated>2008-10-30T06:51:31.426-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ОБЪЕКТЫ'/><category scheme='http://www.blogger.com/atom/ns#' term='ДВИЖОК'/><title type='text'>Движок: загрузка объектов</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px; "&gt;Работаю над загрузчиком объектов. Переписал кое-какие части и сделал многое по нормальному. Дополнил формат объектов (использую для всех данных XML формат). &lt;br /&gt;Вот плоды моих экспериментов (всё-таки мои тени смотрятся очень даже ничего):&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 40); font-family: Verdana; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SQm7uE-e8zI/AAAAAAAAADA/GEbOqdu2NUQ/s1600-h/loader.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 250px;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SQm7uE-e8zI/AAAAAAAAADA/GEbOqdu2NUQ/s320/loader.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5262944039843328818" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-8401876460279747416?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/8401876460279747416/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=8401876460279747416' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8401876460279747416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8401876460279747416'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/10/blog-post_30.html' title='Движок: загрузка объектов'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SQm7uE-e8zI/AAAAAAAAADA/GEbOqdu2NUQ/s72-c/loader.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-9034770647186693043</id><published>2008-10-20T13:31:00.000-07:00</published><updated>2008-10-20T13:34:33.070-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='УРОВНИ'/><category scheme='http://www.blogger.com/atom/ns#' term='КОНЦЕПТ'/><title type='text'>Набросок кусочка уровня</title><content type='html'>&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:12px;"&gt;Вот решил набросать в Максе кусочек уровня, чтобы посмотреть как ранее созданные модели вместе будут смотрется. Вцелом я доволен результатом, более менее в одном стиле, но всё же кое-что придётся наверно перекрашивать или играться с гаммой\яркостью\контрастом. Ну это уже ближе к созданию уровней будет.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=""&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 48px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;font-family:Verdana;font-size:12px;"&gt;&lt;img src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SPzq0zP6kwI/AAAAAAAAAC4/B28wvYS4h4c/s320/StyleLev01.jpg" style="cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5259336657692955394" /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-9034770647186693043?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/9034770647186693043/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=9034770647186693043' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/9034770647186693043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/9034770647186693043'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/10/blog-post_6197.html' title='Набросок кусочка уровня'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_QsaKBzHSLfk/SPzq0zP6kwI/AAAAAAAAAC4/B28wvYS4h4c/s72-c/StyleLev01.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-7293138827000734341</id><published>2008-10-20T13:17:00.000-07:00</published><updated>2008-10-20T13:20:16.001-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Модели: ветхий забор, платформы, опора</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;дряхлый поломаный заборчик для уровня "свалка":&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznzU7ekaI/AAAAAAAAACg/JKtZNG75YNY/s1600-h/wall1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznzU7ekaI/AAAAAAAAACg/JKtZNG75YNY/s320/wall1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5259333333839417762" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;платформы для уровня "завод":&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznzoPFX9I/AAAAAAAAACo/SPtfMT6FDw8/s1600-h/platform1.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznzoPFX9I/AAAAAAAAACo/SPtfMT6FDw8/s320/platform1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5259333339021926354" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;опора металлических ферм для уровня "завод":&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 12px; white-space: pre-wrap; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznz9B47EI/AAAAAAAAACw/NP3UpTd2zOU/s1600-h/Opora.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznz9B47EI/AAAAAAAAACw/NP3UpTd2zOU/s320/Opora.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5259333344603728962" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-7293138827000734341?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/7293138827000734341/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=7293138827000734341' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7293138827000734341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/7293138827000734341'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/10/blog-post_20.html' title='Модели: ветхий забор, платформы, опора'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SPznzU7ekaI/AAAAAAAAACg/JKtZNG75YNY/s72-c/wall1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3523777644239509964</id><published>2008-10-05T15:17:00.000-07:00</published><updated>2008-10-05T15:24:20.719-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='РЕНДЕР'/><category scheme='http://www.blogger.com/atom/ns#' term='ОСВЕЩЕНИЕ'/><title type='text'>Рендер: освещение (переделан пайплайн)</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(0, 0, 40);   font-family:Verdana;font-size:10px;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:14px;"&gt;&lt;p&gt;А вот не всё так радостно оказалось, как планировалось :) &lt;br /&gt;Т.к. нам при наложении теней (и освещения собсна тоже) от нескольких источников надо различать какая тень от какого источника рендится. Ибо сложение освещения идёт по формуле:&lt;/p&gt;&lt;p&gt;Light1*Shadow1+Light2*Shadow2+...+LightN*ShadowN&lt;/p&gt;&lt;p&gt;А по технике складывания в один буфер получается что&lt;/p&gt;&lt;p&gt;Light1*(Shadow1*Shadow2*...*ShadowN) + Light2*(Shadow1*Shadow2*...*ShadowN) +... + LightN*(Shadow1*Shadow2*...*ShadowN)&lt;/p&gt;&lt;p&gt;Короче нифига неправильно затенялось :(  (&lt;a href="http://www.gamedev.ru/code/forum/?id=85226" style="color: rgb(49, 141, 196); "&gt;http://www.gamedev.ru/code/forum/?id=85226&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;Вообщем переколдовал я рендер и решил проблему через MRT. При освещении в RT1 рендится бамп и освещение, в RT2 – только тени с освещением. Потом RT2 фильтруется и накладывается на RT1. Таким образом получаем чёткий бамп с наложенным на него освещением и подразмытыми тенями. Проверка на растекание тени через края объектов также присутствует. Реализованы все виды освещения Directional, Omni, Spot.&lt;/p&gt;&lt;p&gt;Теперь займусь наверно общей архитектурой игры – иерархия объектов, отсечения и всё такое.&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Georgia; font-size: 16px; "&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.anegmetex.com/blog/TestEngine_SoftShadows_01.jpg"&gt;&lt;img src="http://www.anegmetex.com/blog/TestEngine_SoftShadows_01.jpg" border="0" alt="" style="cursor: pointer; width: 320px; " /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3523777644239509964?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3523777644239509964/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3523777644239509964' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3523777644239509964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3523777644239509964'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/10/blog-post.html' title='Рендер: освещение (переделан пайплайн)'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-8897262194323429070</id><published>2008-09-15T03:35:00.000-07:00</published><updated>2008-09-15T03:37:49.588-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Модели: тех-блок, бочка</title><content type='html'>Технический блок, напичканой разной фигнёй - кнопками, проводами, переключателями...&lt;br /&gt;&lt;br /&gt;&lt;img src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SM465PTRLHI/AAAAAAAAACQ/HZH1Xop30nE/s320/PanelBlock.jpg" style="cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5246195370967510130" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Просто бочка&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;img src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SM465PmEiHI/AAAAAAAAACY/bdf7RgN6rek/s320/barrel2.jpg" style="cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5246195371046373490" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-8897262194323429070?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/8897262194323429070/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=8897262194323429070' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8897262194323429070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/8897262194323429070'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/09/blog-post_15.html' title='Модели: тех-блок, бочка'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_QsaKBzHSLfk/SM465PTRLHI/AAAAAAAAACQ/HZH1Xop30nE/s72-c/PanelBlock.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3570197366240884819</id><published>2008-09-08T04:11:00.000-07:00</published><updated>2008-09-08T04:13:17.179-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='модели'/><title type='text'>Модели: Насосная станция</title><content type='html'>&lt;div&gt;Первые наброски зданий. Насосная станция. Текстуры пока WIP, не везде довёл до  ума.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SMUIqlRJUUI/AAAAAAAAACI/dwceM-1qVOI/s1600-h/building_pipe_t.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SMUIqlRJUUI/AAAAAAAAACI/dwceM-1qVOI/s320/building_pipe_t.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5243606868794364226" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3570197366240884819?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3570197366240884819/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3570197366240884819' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3570197366240884819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3570197366240884819'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/09/blog-post_08.html' title='Модели: Насосная станция'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SMUIqlRJUUI/AAAAAAAAACI/dwceM-1qVOI/s72-c/building_pipe_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-3101869958982623842</id><published>2008-09-05T14:33:00.000-07:00</published><updated>2008-09-05T14:42:37.712-07:00</updated><title type='text'>Первый свет. Пайплайн рендера</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Освещение&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Освещение – очень важная деталь в современном рендинге. Думаю гдето 30% визуальной привлекательности картинки – хороший свет и тени. Оно придаёт объём и делает картинку более выразительной.&lt;/p&gt;&lt;p class="MsoNormal"&gt;В проекте будем использовать попиксельное освещение, для теней – шадоумапы, простейший бамп, спекуляр, возможно &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;SSAO&lt;/span&gt;.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;В игре будут следующие типы источников:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Глобальное освещение&lt;/span&gt;. Глобальное освещение представлено виде одного направленного источника плюс небольшой амбиент. Резмер теневой карты – 1280&lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;x&lt;/span&gt;1280 пикселей. Возможно будет также реализовано &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;SSAO&lt;/span&gt;.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Подсветка участков уровня&lt;/span&gt;. Предположительно только конусные источники (Фонари, прожекторы). Освещают существенную часть уровня (до 2/3 игрового экрана) Размер теневых карт (в зависимости от размера источника) – 512, 256, 128. Также сюда входят споты и с анимированным прожектором – это крутящиеся винты вентиляции и т.п.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Мелкие и совсем мелкие источники.&lt;/span&gt; Предположительно только точечные источники. Это всплохи света при стрельбе персонажей, маленькие лампочки, горящие детали и т.д. Для них не предполагается использовать тени. Однако если удастся удачно сделать тени для точечного источника с помощью всего двух рендер-таргетов (трапезоид) то возможно и их оборудуем тенями. Покрайней мере для всплохов освещения при стрельбе.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Пайплайн рендера&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Пайплайн рендера на данный момент таков:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;Z&lt;/span&gt;-проход. Заполняем &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;Z&lt;/span&gt;-буфер. Получаем &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;Z&lt;/span&gt;-текстуру. Если используется &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;SSAO&lt;/span&gt; – рендерим буферы нормалей и позиции.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Рендер теней в буфер теней. Для каждого источника рендим &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;Z&lt;/span&gt;-текстуру и после переключаем камеру и рендим наши тени для этого источника в буфер теней. Повторяем операцию для всех лампочек, имеющих тени. На этом этапе НЕ ИСПОЛЬЗУЕМ вообще никакого сглаживания. Даже ПЦФ.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Размываем двумя проходами гаусс-фильтра наш буфер теней. Подтёки теней устраняем при помощи &lt;span lang="EN-US" style="mso-ansi-language: EN-US"&gt;Z&lt;/span&gt;-Текстуры (которую получили в пункте 1).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Далее рендим освещение от каждой из лампочек в буфер цвета. Используем простой бамп (это всё пока без диффузной составляющей)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Вот теперь рендим диффузную составляющую.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Ну и наконец &lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;COMBINE&lt;/span&gt;! Всё собираем и выводим на экран.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Пока реализованы в движке тени для направленного источника, без размытия теневого буфера. Вот что имеем на данный момент&lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;img src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SMGmcUu2URI/AAAAAAAAACA/mfJpm0rGJvg/s320/FirstLight.jpg" style="cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5242654446767722770" /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-3101869958982623842?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/3101869958982623842/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=3101869958982623842' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3101869958982623842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/3101869958982623842'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/09/blog-post.html' title='Первый свет. Пайплайн рендера'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_QsaKBzHSLfk/SMGmcUu2URI/AAAAAAAAACA/mfJpm0rGJvg/s72-c/FirstLight.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-6370727175476619016</id><published>2008-08-28T11:21:00.000-07:00</published><updated>2008-08-28T11:30:30.295-07:00</updated><title type='text'>Частицы, PhysX, Модели</title><content type='html'>&lt;strong&gt;Движок. Частицы&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Как я уже говорил, я переписываю свой старый движок на новый лад. Стараясь исправлять все прошлые косяки в архитектуре. Вот сейчас дошёл до системы частиц. То что было в старом движке было довольно косячное, не было многих нужных параметров (масса, гравитация, ветер). Поэтому я решил полностью переделать этот модуль… на основе примера с codeproject. (Мы против велосипедов) Процесс портирования занял около 4 часов, больше связанный с изменением семантики и перешиванием рендера (в примере были поинт спрайты, а я юзаю квады. Кроме того было сделано разделение на ParticleEmitter и ParticleSystem). Логика движения частиц осталась нетронутой. Пока так сгодится. В итоге первый костёрчик в проекте заработал к вечеру :)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SLbtWI_0JMI/AAAAAAAAABg/TA2oEeJVSEI/s1600-h/ParticleFire.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5239636181120197826" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SLbtWI_0JMI/AAAAAAAAABg/TA2oEeJVSEI/s320/ParticleFire.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;PhysX&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Вчера изучал утилиту PhysXViewer. Довольно полезная штука, обтягивает геометрию физическими примитивами и\или строит упрощенную физ. модель. Думаю её стоит заюзать в проекте. Однако не понравился интерфейс, и, что более важно, то что она на выходе генерит. А генерит она XML набитый до отказа всякими установками сцены, флажки и т.д. Короче среди этого безобразия лежат нужные данные по созданным примитивам. Поэтому возможно придётся написать утилитку-чистильщик, которая удалит всю не нужную белиберду&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;Модели&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Апдейт. Мелочёвка для уровня.&lt;br /&gt;&lt;br /&gt;Электронагнетатель. Наверху эмиттер который будет искрится системой частиц&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_QsaKBzHSLfk/SLbuR04mfXI/AAAAAAAAAB4/pTnsZUZDq8Y/s1600-h/ElectroRaw.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5239637206513384818" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_QsaKBzHSLfk/SLbuR04mfXI/AAAAAAAAAB4/pTnsZUZDq8Y/s320/ElectroRaw.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Просто железные блоки для локации "свалка" &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SLbtlVcKqoI/AAAAAAAAABo/MHgklwyrhM0/s1600-h/Blocks.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5239636442158377602" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SLbtlVcKqoI/AAAAAAAAABo/MHgklwyrhM0/s320/Blocks.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Башня. Предположительно наверху будет вращающаяся турель&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_QsaKBzHSLfk/SLbuEeqS7YI/AAAAAAAAABw/j9n_z63cBL4/s1600-h/Tower.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5239636977209503106" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_QsaKBzHSLfk/SLbuEeqS7YI/AAAAAAAAABw/j9n_z63cBL4/s320/Tower.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-6370727175476619016?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/6370727175476619016/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=6370727175476619016' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6370727175476619016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/6370727175476619016'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/08/blog-post_28.html' title='Частицы, PhysX, Модели'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SLbtWI_0JMI/AAAAAAAAABg/TA2oEeJVSEI/s72-c/ParticleFire.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-806739545544798473</id><published>2008-08-26T11:41:00.000-07:00</published><updated>2008-08-26T11:56:32.871-07:00</updated><title type='text'>Наброски в Максе</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;и сразу публикую наброски, чтоб понятно было про что вообще речь идёт:&lt;/p&gt;&lt;a href="http://1.bp.blogspot.com/_QsaKBzHSLfk/SLRRlh98dcI/AAAAAAAAAAs/qph_z3iaSMY/s1600-h/RoboPic.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5238901971753924034" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_QsaKBzHSLfk/SLRRlh98dcI/AAAAAAAAAAs/qph_z3iaSMY/s320/RoboPic.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;А в игре будут они в таком масштабе: &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;a href="http://3.bp.blogspot.com/_QsaKBzHSLfk/SLRRwkS-7rI/AAAAAAAAAA0/AY7g_A5hU_s/s1600-h/RoboInGame.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5238902161357598386" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_QsaKBzHSLfk/SLRRwkS-7rI/AAAAAAAAAA0/AY7g_A5hU_s/s320/RoboInGame.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Вот примерно такой аляповатый арт планируется в игре. Если я конечно моделить лучше не научусь... что сильно врятли&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-806739545544798473?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/806739545544798473/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=806739545544798473' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/806739545544798473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/806739545544798473'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/08/blog-post_26.html' title='Наброски в Максе'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_QsaKBzHSLfk/SLRRlh98dcI/AAAAAAAAAAs/qph_z3iaSMY/s72-c/RoboPic.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8066019442342007691.post-1579375530292661827</id><published>2008-08-26T11:35:00.000-07:00</published><updated>2008-08-26T11:40:26.089-07:00</updated><title type='text'>Начало проекта</title><content type='html'>&lt;p&gt;Вот и пришло время нового проекта. Отдохнув от очередного провала(&lt;a href="http://www.gamedev.ru/projects/forum/?id=73077"&gt;http://www.gamedev.ru/projects/forum/?id=73077&lt;/a&gt;) и полностью разочаровавшись в командах энтузиастов, я с чистой совестью решил делать что-то новое. Поразмыслив немного пришёл к выводу что проект принесёт больше пользы, если я буду описывать его разработку в блоге (всегда хотел попробовать вести блог), ну а так как мой хостинг только HTML держит, то...&lt;/p&gt;&lt;p&gt;Итак. &lt;strong&gt;Поинты проекта на данный момент такие:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt; Игра про роботов (Не, ну а чё? :) &lt;/li&gt;&lt;li&gt;Фишка игры в том, что роботов можно собирать из отдельных частей &lt;/li&gt;&lt;li&gt;Механика как в старичке Scary Nightmare (вид сверху, управление аля алиен шутер). Возможно будет введены некоторые РПГ элементы&lt;/li&gt;&lt;li&gt;Сюжет ну о-о-очень секретный :) &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Техническая сторона вопроса:&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Третья ипостась моего недодвижка&lt;/li&gt;&lt;li&gt;DirectX9\C++\Шейдеры 2.0&lt;/li&gt;&lt;li&gt;Мидлваре – PhysX,pugiXML,Lua,OggVorbis&lt;/li&gt;&lt;li&gt;Предположительно пока всё делаю сам. Арт\Звуки\код &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Почему такой выбор:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Анимировать не умею, поэтому роботы не человекоподобные&lt;/li&gt;&lt;li&gt;Вид сверху – проще движок, нет лода, оклюжена и прочего геморроя &lt;/li&gt;&lt;li&gt;Геймплей знаком. Многое прорабатывалось мной в Scary Nightmare&lt;/li&gt;&lt;li&gt;Техногенный арт проще делать, чем для скажем средневековья. И не надо соблюдать реальные пропорции\вид\цвет и т.д. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;Вот с этим на борту и выступаем. Проект делается “Фор Фан”(TM) и в свободное от работы время. Поэтому частых обновлений не ждите. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8066019442342007691-1579375530292661827?l=robo-game.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robo-game.blogspot.com/feeds/1579375530292661827/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8066019442342007691&amp;postID=1579375530292661827' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1579375530292661827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8066019442342007691/posts/default/1579375530292661827'/><link rel='alternate' type='text/html' href='http://robo-game.blogspot.com/2008/08/blog-post.html' title='Начало проекта'/><author><name>Xirmac</name><uri>http://www.blogger.com/profile/09309408867618362530</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_QsaKBzHSLfk/SLRd5TQgQ1I/AAAAAAAAABA/-rsGh3BQ6vM/S220/MyFoto4.jpg'/></author><thr:total>0</thr:total></entry></feed>
