Version support is not available for this paste.

Pasted by Filippok as text at 2006-08-23 01:36:44 MSK and set expiration to never.

Paste will expire never.

  1. [23:18] * Filippok changes topic to 'Мы не проиграли дуэль... Мы просто отодвинули её конец... до 1 января... 2147 года... | Заценяем трек демиурга: http://www.realmusic.ru/songs/222245/ | Сегодня в программе: Reystlin... Цирк приехал!!!'
  2. [23:23] * _Reystlin- has joined #gamedev_duel
  3. [23:23] <_Winnie> _Reystlin-, привет.
  4. [23:23] <_Reystlin-> Filippok :)
  5. [23:23] <_Reystlin-> ку
  6. [23:23] <_Winnie> мы все тут собрались, что бы тебе помогать.
  7. [23:23] <_Reystlin-> ды ну :)
  8. [23:24] <_Reystlin-> я пока и сам спровляюсь
  9. [23:24] <_Reystlin-> :)
  10. [23:24] * _Winnie тормошит Darth
  11. [23:24] <_Reystlin->  что в ли сложного то
  12. [23:24] <_Reystlin-> :)
  13. [23:24] <NULL_PTR> Привет!
  14. [23:24] * Filippok slaps Darth around a bit with a large trout
  15. [23:24] <_Reystlin-> а по поводу этой технологии
  16. [23:24] <_Reystlin-> мне наш дизайнер сказывал
  17. [23:24] <_Reystlin-> что типа придумали такую технологию
  18. [23:24] <_Reystlin-> очь куртая сцена
  19. [23:25] <_Reystlin-> которая очь долго рендерится
  20. [23:25] <_Reystlin-> както рендерится в файл
  21. [23:26] <_Reystlin-> во время разработки
  22. [23:26] <_Reystlin-> а потом когда играеш в игру
  23. [23:26] <_Reystlin-> там из этого файла достаётся то что прорендерилось и рисуется на экран но уже более быстрее
  24. [23:26] <_Reystlin-> мне так обьяснили
  25. [23:26] <_Reystlin-> я хз есть такая технология или нет
  26. [23:26] <_Reystlin-> но чёт я так и непоняял как она работает:)
  27. [23:26] <_Reystlin-> как можно рендерить в файл
  28. [23:26] <_Reystlin-> и как можно рендерить на экран крутую сцену очь быстро
  29. [23:27] * Darth has quit IRC (Ping timeout)
  30. [23:27] <_Reystlin-> в которой куча деревьев
  31. [23:27] <_Reystlin-> в которых куча поликов
  32. [23:27] <_Winnie> да легко, кстати.
  33. [23:27] <_Winnie> рендеряшь в сверх-качестве.
  34. [23:28] <_Winnie> заодно и z-буффер запоминаешь.
  35. [23:28] <_Winnie> и получаем мега-бэграунд.
  36. [23:28] <_Reystlin-> ээ:)
  37. [23:28] <_Reystlin-> ну ты знаеш про такую технологию?
  38. [23:28] <_Winnie> такое когда-то использовалось на 486 в игрушке Alone In The Dark.
  39. [23:28] <_Reystlin-> её в этом году придумали
  40. [23:28] <_Winnie> лет десять назад.
  41. [23:28] <_Reystlin-> :)
  42. [23:29] <_Reystlin-> понятно
  43. [23:29] <_Reystlin-> ну значит это реально
  44. [23:29] <_Reystlin-> ?
  45. [23:29] <_Winnie> конечно.
  46. [23:29] <_Reystlin-> понятно
  47. [23:29] <_Winnie> если для игры статичный задник это нормально - то да.
  48. [23:29] <_Winnie> но если нужно движение камеры - то это неприемлемо.
  49. [23:29] <_Winnie> так как задник статический.
  50. [23:30] <_Reystlin-> ээ
  51. [23:30] <_Reystlin-> а чё за здник?
  52. [23:30] <_Reystlin-> *задник
  53. [23:30] <_Reystlin-> :)
  54. [23:30] <_Winnie> ну, "задник", на фоне которого всё происходит.
  55. [23:30] <_Reystlin-> аа
  56. [23:30] <_Reystlin-> ну вот у меня в движке двигается сцена
  57. [23:30] <_Reystlin-> а не камера
  58. [23:30] * Darth has joined #gamedev_duel
  59. [23:30] <_Reystlin-> это получается что можно эту штуку применить?
  60. [23:31] <_Winnie> ну и конкретная библиотека тут нипричём, отрендерить можно в чём угодно, хоть в майке.
  61. [23:31] <_Winnie> в Maya.
  62. [23:31] <_Reystlin-> понятно
  63. [23:31] <_Reystlin-> тут идёт рендеринг в какойто файл
  64. [23:31] <_Reystlin-> неоябзательно в библиотеку
  65. [23:31] <_Reystlin-> :)
  66. [23:32] <_Reystlin-> а как в синема 4д или в 3д максе такое зделать?
  67. [23:32] <_Reystlin-> тоесть отрендерить
  68. [23:32] <_Reystlin-> в файл
  69. [23:32] * _Winnie не знает совершенно подробностей, попробуй изучить help.
  70. [23:32] <_Reystlin-> лана попробую
  71. [23:32] <Filippok> там есть какойто специальный экспортер
  72. [23:33] <_Reystlin-> а незнаеш де можно найти побольше инфы по этой технологии?
  73. [23:33] <NULL_PTR> e pyfrjvjuj
  74. [23:33] <Filippok> да гдето на сайте епика было
  75. [23:33] <NULL_PTR> *у знакомого
  76. [23:33] <_Reystlin-> NULL_PTR я про организацию данной фичи
  77. [23:33] <_Reystlin-> :)
  78. [23:33] <_Reystlin-> типап как её зделать
  79. [23:34] <_Reystlin-> я вот тут щяс читаю статью с гд на тему работы с опенил
  80. [23:34] <_Reystlin-> проблема появилась
  81. [23:34] <_Reystlin-> значит ругается error C2065: 't' : undeclared identifier
  82. [23:35] <_Reystlin-> типа переменной нет
  83. [23:35] <_Reystlin-> а она использщуется в ф-и
  84. [23:35] <_Reystlin-> gluBuild2DMipmaps(GL_TEXTURE_2D, t, width, height, type,GL_UNSIGNED_BYTE, data);
  85. [23:35] <_Reystlin-> какой тип у этой переменной?
  86. [23:35] <_Reystlin-> и что она означает?
  87. [23:35] <_Reystlin-> в данном случае
  88. [23:36] <NULL_PTR> Количество компонент
  89. [23:36] <_Reystlin-> ?
  90. [23:36] <NULL_PTR> 3 для RGB 4 для RGBA
  91. [23:36] <_Reystlin-> понял
  92. [23:37] <_Reystlin-> сенкс
  93. [23:37] <_Reystlin-> а для GL_RGB8 какое число?
  94. [23:37] <NULL_PTR> 3 по идее
  95. [23:37] <NULL_PTR> битность значения не имеет
  96. [23:38] <NULL_PTR> именно кол-во компонентов цвета
  97. [23:38] <_Reystlin-> понятно
  98. [23:38] <_Reystlin-> сенкс
  99. [23:41] <NULL_PTR> Ещё вопросы?
  100. [23:41] <Filippok> мы тут специально собрались
  101. [23:41] <Filippok> чтобы тебе помочь
  102. [23:41] <_Reystlin-> :)
  103. [23:41] <_Reystlin-> ну да есть вопрос
  104. [23:41] <_Reystlin-> но вы врятле поможете
  105. [23:41] <_Reystlin-> :)
  106. [23:42] <NULL_PTR> тут Вини
  107. [23:42] <_Reystlin-> по поводу организации данно йтехнологии
  108. [23:42] <_Reystlin-> ну я знгаю
  109. [23:42] <_Reystlin-> *знаю:)
  110. [23:42] <Filippok> ну мы щас вместе подумаем
  111. [23:42] <Filippok> поищем в инете
  112. [23:42] <Filippok> и поможем ;)
  113. [23:43] <_Reystlin-> :)
  114. [23:44] <_Reystlin-> странно чтото даже опенил нехочит мне тга грузить:(
  115. [23:46] <Filippok> а ты юзай bmp
  116. [23:46] <Filippok> нафига тебе tga?
  117. [23:46] <_Reystlin-> а у бмп альфы нема
  118. [23:46] <Filippok> bmp лучше чем tga
  119. [23:46] <_Reystlin-> я тож так думал:)
  120. [23:46] <_Reystlin-> раньше
  121. [23:46] <_Reystlin-> http://www.everfall.com/paste/id.php?qery67gh9762
  122. [23:46] <_Winnie> есть в bmp альфа
  123. [23:46] <_Reystlin-> вот что я пишу
  124. [23:46] <NULL_PTR> dds заруливает
  125. [23:46] <Filippok> ага
  126. [23:46] <_Winnie> и фотошоп умеет с ней работать.
  127. [23:46] <_Reystlin-> _Winnie разве?
  128. [23:46] <_Winnie> да.
  129. [23:46] <Filippok> бмп и грузить легко
  130. [23:46] <NULL_PTR> Да
  131. [23:46] <_Reystlin-> хм
  132. [23:47] <_Reystlin-> незнал
  133. [23:47] <NULL_PTR> Фил, тга легче бмп
  134. [23:47] <_Reystlin-> но он собака много весит
  135. [23:47] <Filippok> нуичо?
  136. [23:47] <_Winnie> ну, tga бывают сжатые и не сжатые.
  137. [23:47] <_Reystlin-> ну будит игра гигов на 30 ну и чо
  138. [23:47] <Filippok> нее
  139. [23:47] <_Reystlin-> это я знаю
  140. [23:47] <_Winnie> если несжатые - то такого же размера как и bmp.
  141. [23:47] <Filippok> рейст, пожми архиватором ;)
  142. [23:48] <NULL_PTR> rle сжатие редко приносит значительный выйгрыш
  143. [23:49] <NULL_PTR> в бмп кстати противное выравнивание
  144. [23:49] * Reystlin has joined #gamedev_duel
  145. [23:49] <Reystlin> я аыкинуло:(
  146. [23:49] <NULL_PTR> <Filippok> рейст, пожми архиватором ;)
  147. [23:49] <Reystlin> чё тут было?
  148. [23:49] <Reystlin> после
  149. [23:49] <Reystlin> это я видел:)
  150. [23:49] <NULL_PTR> [22:49:06] <NULL_PTR> в бмп кстати противное выравнивание
  151. [23:49] <NULL_PTR> [22:49:13] * Reystlin (pIRCuser51@62.33.16.ircnet-4424) has joined #gamedev_duel
  152. [23:49] <Reystlin> :)
  153. [23:50] <Reystlin> в чём ошибка в коде?
  154. [23:50] * _Reystlin- has quit IRC (Ping timeout)
  155. [23:50] <Reystlin> почему он нехотит правельно работать?
  156. [23:50] <NULL_PTR> Какой?
  157. [23:50] <Reystlin> http://www.everfall.com/paste/id.php?qery67gh9762
  158. [23:51] <NULL_PTR> А как он работает? =)
  159. [23:53] <Filippok> как оно работает?
  160. [23:54] <NULL_PTR> У?
  161. [23:54] * _Reystlin- has joined #gamedev_duel
  162. [23:54] <_Reystlin-> да ё
  163. [23:54] <_Reystlin-> чё такое
  164. [23:54] <_Reystlin-> :(
  165. [23:54] <NULL_PTR> <NULL_PTR> А как он работает? =)
  166. [23:54] * Reystlin has quit IRC (Ping timeout)
  167. [23:54] <NULL_PTR> <Filippok> как оно работает?
  168. [23:55] <_Reystlin-> грузит тепкстуру
  169. [23:55] <_Reystlin-> а на полик её рисовать нехотит
  170. [23:56] <NULL_PTR> glGetError() что возвращает?
  171. [23:56] <_Reystlin-> вроде ничего
  172. [23:57] <_Reystlin-> если бы возвращяло IL_NO_ERROR
  173. [23:57] <_Reystlin-> он бы вылетал
  174. [23:57] <NULL_PTR> glEnable(GL_TEXTURE_2D); не забыл?
  175. [23:58] * Reystlin has joined #gamedev_duel
  176. [23:58] <NULL_PTR> ??
  177. [23:59] <NULL_PTR> может наоборот?
  178. [23:59] <Filippok> нул
  179. [23:59] <Filippok> наоборот
  180. [23:59] <Filippok> ;)
  181. [23:59] * _Reystlin- has quit IRC (Ping timeout)
  182. Session Time: Wed Aug 23 00:00:00 2006
  183. [00:00] <Filippok> [23:57] <NULL_PTR> glEnable(GL_TEXTURE_2D); не забыл?
  184. [00:00] <Reystlin> точна
  185. [00:00] <Reystlin> :)
  186. [00:00] <Reystlin> щяс проверю
  187. [00:00] <Reystlin> не-а
  188. [00:01] <Reystlin> всёравно
  189. [00:01] <Filippok> покажи изменённый код
  190. [00:01] <NULL_PTR> А раньше полик был?
  191. [00:01] <NULL_PTR> *был виден
  192. [00:02] <NULL_PTR> А то SwapBuffers я не вижу
  193. [00:02] <Reystlin> а он в другом месте
  194. [00:02] <NULL_PTR> Ладно, скоро вернусь
  195. [00:02] <Reystlin> http://www.everfall.com/paste/id.php?qery67gh9762
  196. [00:02] * NULL_PTR is now known as NULL_PTR[away]
  197. [00:02] <Reystlin> вот
  198. [00:02] <Reystlin> ладно с текстурой я какнить раберусь
  199. [00:02] <Reystlin> мне важнее вот что зделать
  200. [00:02] <Reystlin> я уже 3 месяца убил так и не зделал
  201. [00:02] <Reystlin> колизию
  202. [00:03] <Reystlin> :(
  203. [00:03] * NULL_PTR[gprs] has joined #gamedev_duel
  204. [00:03] <Reystlin> подскажите алгоритм для поиска поподает ли тренугольник в другой треугольник если я знаю все точки этих треугольников
  205. [00:05] <Reystlin> и тишина :)
  206. [00:05] * ShTiRLiC has joined #gamedev_duel
  207. [00:05] * ChanServ sets mode: +oa ShTiRLiC ShTiRLiC
  208. [00:06] <NULL_PTR[gprs]> гугл посетил? ;-)
  209. [00:06] <_Winnie> Reystlin, проверь что какое-либо ребро одного пересекает ребро другого.
  210. [00:06] <ShTiRLiC> omg
  211. [00:06] <ShTiRLiC> O-M-F-G
  212. [00:06] <Reystlin> ага
  213. [00:06] <_Winnie> так сказать, упрощение задачи.
  214. [00:06] <Reystlin> ага но не всегда работает
  215. [00:06] <NULL_PTR[gprs]> привет шпион!
  216. [00:06] <ShTiRLiC> Фхтагн
  217. [00:07] <Filippok> ку штирлиц!
  218. [00:07] <ShTiRLiC> Сёдня слил Тибию для компа
  219. [00:07] <Filippok> мы тут все собрались
  220. [00:07] <Filippok> чтобы помогать рейстлину ;)
  221. [00:07] <ShTiRLiC> Дык я вижу
  222. [00:07] <ShTiRLiC> Группо патдержки
  223. [00:07] <Reystlin> :)
  224. [00:08] <ShTiRLiC> Деми насрал трек?
  225. [00:08] <Filippok> хм
  226. [00:08] <Filippok> давно ;)
  227. [00:08] <ShTiRLiC> Надо пойти заценить... завтра....
  228. [00:08] <Reystlin> _Winnie это нада в цикле пробижать по все 6 рёбрам и проверять переикае тся ил одна из них с одной из 3 ребёр?
  229. [00:08] <ShTiRLiC> Ну я не видел
  230. [00:09] <Filippok> ещё вчера в топик поставил
  231. [00:09] <ShTiRLiC> Ща перелью на промежутачный
  232. [00:09] <_Winnie> пробежать по всем шести и проверить, пересекается ли оно с другим треугольником.
  233. [00:09] <Filippok> ага
  234. [00:09] <_Winnie> возможно, изнутри.
  235. [00:09] <Reystlin> понятно
  236. [00:09] <Filippok> и так для каждого треугольника
  237. [00:09] <Reystlin> ну да :)
  238. [00:09] <_Winnie> для каждой пары.
  239. [00:09] <ShTiRLiC> Так
  240. [00:09] <ShTiRLiC> Погоди-ка
  241. [00:09] <Filippok> а да
  242. [00:09] <Filippok> точняк
  243. [00:09] <ShTiRLiC> А если клиппинг стоит?
  244. [00:10] <Reystlin> а это что:
  245. [00:10] <ShTiRLiC> Тогда надо через одно
  246. [00:10] <Reystlin> ?
  247. [00:10] <ShTiRLiC> Это в стейтах вирутальной машины обработки геометрии ставится
  248. [00:10] <Filippok> ну это тоже мега технология
  249. [00:10] <Filippok> штирлиц
  250. [00:10] <ShTiRLiC> Дык
  251. [00:10] <Filippok> расскажи ему
  252. [00:10] <ShTiRLiC> Эм...
  253. [00:10] <ShTiRLiC> Что именно?
  254. [00:11] <ShTiRLiC> Про клиппинг?
  255. [00:11] <Reystlin> ну хотяб про него:)
  256. [00:11] <ShTiRLiC> Ага
  257. [00:11] <Reystlin> _Winnie а как называется та технология о которой мы в начале говарили?
  258. [00:11] <ShTiRLiC> В общем, сначала ставится куллинг
  259. [00:11] <Reystlin> ээ
  260. [00:11] <Reystlin> :)
  261. [00:11] <ShTiRLiC> Куллинг понижает температуру ядра, так что можно повышать стриминг пакетов вершин
  262. [00:11] <_Winnie> да никак не называется. пререндеринг, мож.
  263. [00:12] <Reystlin> понятно
  264. [00:12] <Reystlin> ShTiRLiC какую ещё температуру
  265. [00:12] <ShTiRLiC> После этого переходишь в пространство имен ядра
  266. [00:12] <Reystlin> какого ядра?
  267. [00:12] <ShTiRLiC> И там просто включаешь клиппинг
  268. [00:12] <Reystlin> ээ
  269. [00:12] <Reystlin> :)
  270. [00:12] <ShTiRLiC> Ядра видеокарты
  271. [00:12] <_Winnie> пространство ядра треунольника.
  272. [00:12] <ShTiRLiC> Да, или квада, если у тебя квады
  273. [00:13] <Reystlin> почти понятно
  274. [00:13] <ShTiRLiC> Зависит от архитектуры движка и формата хранения метаданных
  275. [00:13] <Filippok> да
  276. [00:13] <Filippok> мы потом ещё и линков дадим
  277. [00:13] <Reystlin> :)
  278. [00:13] <Reystlin> тока русских
  279. [00:13] <Reystlin> !
  280. [00:13] <ShTiRLiC> Да-да
  281. [00:13] <ShTiRLiC> Это же наполовину русская технология
  282. [00:14] <ShTiRLiC> В разработке участвовал сам СЕМЕН
  283. [00:14] <Reystlin> оо:)
  284. [00:15] <ShTiRLiC> Еще бы
  285. [00:15] <ShTiRLiC> Думаешь, что его так уважают тут?
  286. [00:15] <ShTiRLiC> В общем
  287. [00:15] <ShTiRLiC> Систему надо проектировать исходя из флоу-контроля метаданных
  288. [00:15] <ShTiRLiC> Метаданные умеешь сохранять?
  289. [00:16] <Reystlin> не-а
  290. [00:16] <Reystlin> я даже плохо знаю что это
  291. [00:16] <Reystlin> :)
  292. [00:16] <ShTiRLiC> Бери мануал по формату mtd
  293. [00:16] <Reystlin> ок
  294. [00:16] <ShTiRLiC> И заполняй
  295. [00:16] <ShTiRLiC> Генерицца из мешей и бинарных делений подпространств
  296. [00:17] <ShTiRLiC> При наложении получается массив метаданных
  297. [00:17] <Reystlin> примерно понятно
  298. [00:17] <ShTiRLiC> Их надо передавать четко синхронизированно с основными данными
  299. [00:17] <Reystlin> так ещё вопрос
  300. [00:17] <ShTiRLiC> Иначе возникает рассинхронизация и биение чипа и памяти
  301. [00:17] <Reystlin> вот значит у меня в игре планируетцо зделать возможность стрелять
  302. [00:17] <Reystlin> :)
  303. [00:18] <Reystlin> и + онлайн
  304. [00:18] <Reystlin> вот каким образом передавать всем клиентам пули?
  305. [00:18] <ShTiRLiC> Ага
  306. [00:18] <NULL_PTR[gprs]> в пакетах
  307. [00:18] <Filippok> да
  308. [00:18] <ShTiRLiC> Вопрос довольно популярен среди начинающих девелоперов
  309. [00:18] <Reystlin> ну это понятно
  310. [00:18] <ShTiRLiC> Погоди
  311. [00:18] <Filippok> в пакетах
  312. [00:18] <ShTiRLiC> Нулл, погоди
  313. [00:18] <Filippok> погоди
  314. [00:18] <ShTiRLiC> Ща я объясню
  315. [00:18] <Reystlin> ок
  316. [00:18] <Reystlin> слушаю
  317. [00:18] <Filippok> я это реализовывал уже
  318. [00:19] <Reystlin> Filippok ну поможеш тогда потом :)
  319. [00:19] <ShTiRLiC> Во-первых, в пакетах не рекомендуется
  320. [00:19] <NULL_PTR[gprs]> лан, я кушать
  321. [00:19] <Filippok> нифига
  322. [00:19] <ShTiRLiC> Предполагается, что пакеты ты упаковываешь в боксы
  323. [00:19] <Filippok> в пакетах самое то
  324. [00:19] <ShTiRLiC> Т.е. коробки
  325. [00:19] <Filippok> ну можно и в коробки
  326. [00:19] <Filippok> но сложнее
  327. [00:19] <Filippok> про пакеты тоже надо рассказать
  328. [00:20] <Filippok> ведь в коробки пули пакуюцца в пакетах
  329. [00:20] <Reystlin> ну а как тогда ещё?
  330. [00:20] <ShTiRLiC> Не
  331. [00:20] <ShTiRLiC> Ты не шаришь
  332. [00:20] <Filippok> никак
  333. [00:20] * NULL_PTR[gprs] is now known as NULL_PTR[eat]
  334. [00:20] <ShTiRLiC> Значит, организуешь поток ввода-вывода
  335. [00:20] <ShTiRLiC> Делается через консольные сокеты
  336. [00:20] <ShTiRLiC> В общем, ничего сложного
  337. [00:20] <ShTiRLiC> Далее ставишь таймеры отсчета и синхронизации на обеих сторонах
  338. [00:20] <ShTiRLiC> Это специальный тип таймеров в OpenGL
  339. [00:20] <ShTiRLiC> В DirectX немного по-другому называются, не помню сейчас
  340. [00:20] <ShTiRLiC> Filippok, пакеты - это примитив, это и так все знают
  341. [00:20] <Filippok> ага
  342. [00:20] <ShTiRLiC> Коробки же появились только в движке Doom3
  343. [00:21] <ShTiRLiC> Там что технология довольно передовая
  344. [00:21] <ShTiRLiC> Так
  345. [00:21] <ShTiRLiC> Блин
  346. [00:21] <ShTiRLiC> Сбил меня
  347. [00:21] <ShTiRLiC> Ах жа
  348. [00:21] <ShTiRLiC> да
  349. [00:21] <ShTiRLiC> Таймеры необходимо синхронизировать
  350. [00:21] <Reystlin> :)
  351. [00:21] <ShTiRLiC> Тогда данные можно слать одновременно
  352. [00:21] <ShTiRLiC> Не дожидаясь ответа
  353. [00:21] <ShTiRLiC> Ускорение трафика в несколько раз
  354. [00:22] <ShTiRLiC> Плюс можно сделать более крутую графику
  355. [00:22] <ShTiRLiC> Пока понятно?
  356. [00:23] <Reystlin> ну да
  357. [00:23] <Reystlin> только есть такая проблема
  358. [00:23] <ShTiRLiC> Ок
  359. [00:23] <ShTiRLiC> Тогда дальше
  360. [00:23] <Reystlin> как потеря данных
  361. [00:23] <Filippok> ага
  362. [00:23] <Reystlin> как с ней быть?
  363. [00:23] <ShTiRLiC> Ааа
  364. [00:23] <ShTiRLiC> Ну да
  365. [00:23] <Filippok> пакеты могут не дойти
  366. [00:23] <ShTiRLiC> Чуть не забыл
  367. [00:23] <Reystlin> ага
  368. [00:23] <Reystlin> :)
  369. [00:24] <Reystlin> так получается лажа какаято
  370. [00:24] <Filippok> а коробки доходят стопудово
  371. [00:24] <ShTiRLiC> Всё делается элементарно
  372. [00:24] <ShTiRLiC> На каждый пакет накладывается сигнатура Флойда-Стейнберга
  373. [00:24] <ShTiRLiC> Таким образом гарантируется доставка
  374. [00:24] <Reystlin> а
  375. [00:24] <ShTiRLiC> Подсистема доставки коробок называется "Почтальон"
  376. [00:24] <Reystlin> тоесть это пакет хоть когданить но придёт
  377. [00:24] <Reystlin> ?
  378. [00:24] <Filippok> поправка: На каждую коробку
  379. [00:24] <Reystlin> в сл ряду может придти
  380. [00:24] <ShTiRLiC> Она присутствует во всех движках
  381. [00:24] <ShTiRLiC> Filippok, нет
  382. [00:24] <ShTiRLiC> На пакет
  383. [00:25] <ShTiRLiC> После сигнатурирования он становится полубоксом
  384. [00:25] <ShTiRLiC> Для дополнения до бокса надо добавить криптовставку
  385. [00:25] <ShTiRLiC> И в качестве "соли" - случайную выборку из метаданных
  386. [00:25] <ShTiRLiC> Reystlin, нет
  387. [00:25] <ShTiRLiC> Коробки доходят не всегда
  388. [00:26] <ShTiRLiC> За счет сигнатурирования, если одна коробка не доходит 5 раз, она сливается со следующей
  389. [00:26] <ShTiRLiC> И так получается экономия данных и непрерывность геймплея
  390. [00:26] <Reystlin> понятно
  391. [00:26] <ShTiRLiC> Ну вот
  392. [00:26] <Filippok> так получаюцца бандерольки
  393. [00:26] <Reystlin> :)
  394. [00:26] <ShTiRLiC> Filippok, это непрограммистский термин
  395. [00:27] <Filippok> ну я забыл как оно в реале называецца
  396. [00:27] <ShTiRLiC> Это всякие ламеры так называют метакоробки
  397. [00:27] <ShTiRLiC> Скажешь такое при программерах - отхватишь в рыло
  398. [00:27] <Reystlin> :)
  399. [00:27] <ShTiRLiC> "Бандерольки" - тьфу блин
  400. [00:27] <Filippok> тока не мета а мега, насколько я помню
  401. [00:27] <ShTiRLiC> Короче
  402. [00:27] <ShTiRLiC> Мега?
  403. [00:27] <ShTiRLiC> Неееет
  404. [00:27] <Filippok> ага
  405. [00:27] <Filippok> читай доки
  406. [00:27] <ShTiRLiC> Мегакоробки - это 10 коробок в связке
  407. [00:27] <Filippok> щас нарою
  408. [00:28] <Filippok> блин
  409. [00:28] <Filippok> я всё перепутал :(
  410. [00:28] <ShTiRLiC> Т.е. неразрывная "посылка"
  411. [00:28] <ShTiRLiC> Посылки доходят всегда
  412. [00:28] <ShTiRLiC> Они применяются для важных данных
  413. [00:29] <ShTiRLiC> Блин, короче
  414. [00:29] <ShTiRLiC> Давайте про типы связи
  415. [00:29] <ShTiRLiC> На какие линии рассчитана игра?
  416. [00:29] * _Reystlin- has joined #gamedev_duel
  417. [00:29] <Filippok> пипец
  418. [00:29] <Filippok> ты столько пропустил
  419. [00:29] <Filippok> столько полезной инфы
  420. [00:30] <ShTiRLiC> Да не оч много
  421. [00:30] <ShTiRLiC> Кинь ему лог
  422. [00:30] <Filippok> да я не тебе
  423. [00:30] <Filippok> щас
  424. [00:30] * Reystlin has quit IRC (Ping timeout)
  425. [00:31] <_Reystlin-> да ё
  426. [00:31] <_Reystlin-> чё такое
  427. [00:31] <_Reystlin-> :(
  428. [00:31] <Filippok>  чо последнее услышал?
  429. [00:31] <ShTiRLiC> Что?
  430. [00:31] <_Reystlin-> [00:28:06] <Filippok> блин
  431. [00:32] <Filippok> лог в привате
  432. [00:32] <Filippok> давайте продолжим?
  433. [00:32] <ShTiRLiC> [00:28:10] <ShTiRLiC> Т.е. неразрывная "посылка"
  434. [00:32] <ShTiRLiC> [00:28:25] <ShTiRLiC> Посылки доходят всегда
  435. [00:32] <ShTiRLiC> [00:28:31] <ShTiRLiC> Они применяются для важных данных
  436. [00:32] <ShTiRLiC> [00:28:48] <Filippok> я всё перепутал :(
  437. [00:32] <ShTiRLiC> [00:28:59] <ShTiRLiC> Блин, короче
  438. [00:32] <ShTiRLiC> [00:29:04] <ShTiRLiC> Давайте про типы связи
  439. [00:32] <ShTiRLiC> [00:29:12] <ShTiRLiC> На какие линии рассчитана игра?
  440. [00:33] * Darth has quit IRC (Quit: )
  441. [00:33] <ShTiRLiC> Так что про линии?
  442. [00:33] <ShTiRLiC> Модем-ADSL-Спутник?
  443. [00:33] <_Reystlin-> на сеть и на модем
  444. [00:33] <_Reystlin-> :)
  445. [00:33] <ShTiRLiC> Ок
  446. [00:33] <ShTiRLiC> Итак
  447. [00:33] <Filippok> для модема сложнее всего...
  448. [00:33] <ShTiRLiC> На модем ставится один синхротаймер
  449. [00:33] <ShTiRLiC> Вообще да
  450. [00:33] <ShTiRLiC> Приходится паковать по Лемпелю-Зиву
  451. [00:33] <Filippok> ага
  452. [00:33] <ShTiRLiC> Иначе перебои трафика
  453. [00:33] <Filippok> туда гигакоробки не влезают
  454. [00:34] <ShTiRLiC> На локалке паковать не надо
  455. [00:34] <ShTiRLiC> Гигакоробки влезают
  456. [00:34] <ShTiRLiC> Но только через портальные подсистемы
  457. [00:34] <ShTiRLiC> Приходится делать слоистую pull-архиектуру
  458. [00:34] <ShTiRLiC> С множеством боковых платформенных интерфейсов
  459. [00:34] <_Reystlin-> стоп
  460. [00:35] <_Reystlin-> нада ещё делать чтобы эти коробки весили немного
  461. [00:35] <ShTiRLiC> ?
  462. [00:35] <ShTiRLiC> Я же сказал
  463. [00:35] <Filippok> дык сказали же
  464. [00:35] <Filippok> их пакуют
  465. [00:35] <_Reystlin-> ато некоторые небудут играть из за того что трафик жрёт
  466. [00:35] <ShTiRLiC> Корбки пакуются методом Лемпеля-Зива
  467. [00:35] <_Reystlin-> понятно
  468. [00:35] <ShTiRLiC> Пишешь потоковый архиватор
  469. [00:35] <ShTiRLiC> Делов на 10 минут
  470. [00:35] <Filippok> можно будет играть даже через гпрс соединение
  471. [00:35] <_Reystlin-> ну для кого как
  472. [00:35] <_Reystlin-> :)
  473. [00:36] <ShTiRLiC> Далее стримишь весь исходящий поток на архиватор, а выход стримишь в систему сигнальной обработки
  474. [00:36] <ShTiRLiC> В общем, если делаешь для локалки - там попроще чуток
  475. [00:36] <ShTiRLiC> Паковать не надо, но складировать надо всё равно
  476. [00:37] <ShTiRLiC> В этом случае архитектура выглядит как бублик
  477. [00:38] <ShTiRLiC> Двояко-замкнутая без ярко выраженного центра
  478. [00:38] <ShTiRLiC> Платформы располагаются на чуть сдвинутом уровне, что дает повышенную гибкость системе
  479. [00:38] <ShTiRLiC> Да, мне тут подсказывают про великую теорему Бублика и Яблока
  480. [00:38] <ShTiRLiC> Ок
  481. [00:38] <ShTiRLiC> Архитектура большинства игр имеет форму бублика или яблока
  482. [00:38] <ShTiRLiC> Яблочная архитектура - это централизованная архитектура
  483. [00:38] * _Reystlin- has quit IRC (Ping timeout)
  484. [00:38] <ShTiRLiC> Бля
  485. [00:39] <ShTiRLiC> Он меня уже заебал
  486. [00:39] <Filippok> ага
  487. [00:39] <ShTiRLiC> Хуле я тут распинаюсь?!
  488. [00:39] <NULL_PTR[eat]> ы
  489. [00:39] * _Reystlin- has joined #gamedev_duel
  490. [00:39] <ShTiRLiC> Киньте лог этому убоищу
  491. [00:39] <Filippok> [00:36] <ShTiRLiC> Далее стримишь весь исходящий поток на архиватор, а выход стримишь в систему сигнальной обработки
  492. [00:39] <Filippok> [00:36] <ShTiRLiC> В общем, если делаешь для локалки - там попроще чуток
  493. [00:39] <Filippok> [00:36] <ShTiRLiC> Паковать не надо, но складировать надо всё равно
  494. [00:39] <Filippok> [00:37] <ShTiRLiC> В этом случае архитектура выглядит как бублик
  495. [00:39] <Filippok> [00:38] <ShTiRLiC> Двояко-замкнутая без ярко выраженного центра
  496. [00:39] <Filippok> [00:38] <ShTiRLiC> Платформы располагаются на чуть сдвинутом уровне, что дает повышенную гибкость системе
  497. [00:39] <Filippok> [00:38] <ShTiRLiC> Да, мне тут подсказывают про великую теорему Бублика и Яблока
  498. [00:39] <Filippok> [00:38] <ShTiRLiC> Ок
  499. [00:39] <Filippok> [00:38] <ShTiRLiC> Архитектура большинства игр имеет форму бублика или яблока
  500. [00:39] <Filippok> [00:38] <ShTiRLiC> Яблочная архитектура - это централизованная архитектура
  501. [00:39] <_Reystlin-> :(
  502. [00:39] <Filippok> давай дальше
  503. [00:39] <Filippok> мне тоже интересно
  504. [00:39] <ShTiRLiC> Ок
  505. [00:40] <ShTiRLiC> Коробки образуются из 10-20 пакетов
  506. [00:40] <Filippok> ато я чото подзабыл как делаецца яблочная архитектура
  507. [00:40] <ShTiRLiC> Это происходит обычно под "кожурой", т.е. оболочкой системы
  508. [00:40] * NULL_PTR[away] is now known as NULL_PTR
  509. [00:40] <ShTiRLiC> Яблоко состоит из множества подоболочек
  510. [00:40] * NULL_PTR[eat] has quit IRC (Quit: used jmIrc)
  511. [00:40] <ShTiRLiC> Причем они обладают размытым шаблонным наследованием
  512. [00:41] <ShTiRLiC> То есть, грубо говоря, могут вращаться друг относительно друга
  513. [00:41] <ShTiRLiC> Для этого применяется паттерн "AppleRot"
  514. [00:41] <Filippok> да
  515. [00:41] <ShTiRLiC> Эплрот по-русски
  516. [00:41] <Filippok> он есть в библиотеке паттернов
  517. [00:41] <Filippok> SPL
  518. [00:41] <Filippok> её качать надо
  519. [00:42] <Filippok> завтра линк дам
  520. [00:42] <ShTiRLiC> Да-да, в boost::pattern
  521. [00:42] <ShTiRLiC> Коробки проскакивают от верхнего слоя до ядра
  522. [00:42] <ShTiRLiC> Эм
  523. [00:42] <ShTiRLiC> Уже выделили в отдельную либу?
  524. [00:42] <ShTiRLiC> Я что-то устарел
  525. [00:42] <Filippok> ага
  526. [00:42] <ShTiRLiC> Да, так вот
  527. [00:42] <Filippok> теперь это SPL::AppleRot
  528. [00:42] <ShTiRLiC> В ядре коробки синглтонизируются в один фасад
  529. [00:43] <ShTiRLiC> Таким образом, интерфейсы коробок стыкуются в единое адресное пространство
  530. [00:43] <ShTiRLiC> Это даёт т.н. "единообразие"
  531. [00:43] <ShTiRLiC> Далее мегакоробка отсылается через враппер для сетевого интерфейса в сеть
  532. [00:44] <ShTiRLiC> Вот и всё
  533. [00:44] <Filippok> ага
  534. [00:44] <Filippok> есть вопросы?
  535. [00:44] <_Reystlin-> да
  536. [00:44] <_Reystlin-> тут нетуда штырлиц порулил
  537. [00:44] <_Reystlin-> :)
  538. [00:44] <ShTiRLiC> В принципе, в своё время aruslan примерно это же рассказывал на лекции
  539. [00:44] <_Reystlin-> я спрашивал как правильно передавать пули
  540. [00:44] <Filippok> дык
  541. [00:44] <ShTiRLiC> Только я упростил и убрал всё дао
  542. [00:44] <Filippok> сказалиже
  543. [00:44] <ShTiRLiC> Блин
  544. [00:44] <_Reystlin-> тоесть не пап вот между компами обмениваться инфой
  545. [00:44] <ShTiRLiC> Не, он меня убивает
  546. [00:44] <_Reystlin-> а как правильно в пакет их запаковать
  547. [00:44] <_Reystlin-> :)
  548. [00:44] <Filippok> короче смотри
  549. [00:44] <_Reystlin-> ну
  550. [00:44] <ShTiRLiC> Пакет создаешь на основе структуризации игровых данных
  551. [00:45] <Filippok> есть специальный класс
  552. [00:45] <Filippok> CPacket
  553. [00:45] <_Reystlin-> стоп
  554. [00:45] <ShTiRLiC> Берешь метаданные пули вместе с координатами
  555. [00:45] <ShTiRLiC> Да-да
  556. [00:45] <_Reystlin-> карочен
  557. [00:45] <ShTiRLiC> Filippok, расскажи
  558. [00:45] <_Reystlin-> у меня есть обьект
  559. [00:45] <ShTiRLiC> Я уже устал
  560. [00:45] <Filippok> щас
  561. [00:45] <_Reystlin-> пуля
  562. [00:45] <ShTiRLiC> Метаданные не забудь
  563. [00:45] <_Reystlin-> у которой есть координаты
  564. [00:45] <_Reystlin-> вот мне нада передать эти координаты другому клиенту
  565. [00:45] <Filippok> короче смотри
  566. [00:45] <_Reystlin-> + чтобы всё шло в реальном времени
  567. [00:46] <Filippok> есть набор классов
  568. [00:46] <_Reystlin-> у всех одинаково
  569. [00:46] <Filippok> для работы с сетью
  570. [00:46] <Filippok> CPacket, CBox, CMetaBox, CMegaBox и CGigaBox
  571. [00:46] <Filippok> создаёшь свой класс
  572. [00:47] <Filippok> наследуешь его от класса пули и от класса CMetaData
  573. [00:47] <_Reystlin-> вот в чём проблема
  574. [00:47] <Filippok> CMetaData - это класс в котором храняцца метаданные
  575. [00:47] <Filippok> я те линк на формат файла с метаданными потом дам
  576. [00:47] <Filippok> смотри
  577. [00:48] <Filippok> потом засовываешь этот класс в пакет функцией CPacket::AddData()
  578. [00:48] <ShTiRLiC> Файл с метаданными - это расширение формата .x на самом деле
  579. [00:48] <Filippok> потом пакуешь это в бокс
  580. [00:48] <ShTiRLiC> Лемпел-Зивом
  581. [00:48] <Filippok> ага
  582. [00:48] <ShTiRLiC> И сигнатуру накладываешь
  583. [00:49] <Filippok> да
  584. [00:49] <Filippok> чуть не забыл
  585. [00:49] <ShTiRLiC> Через CBox::Sign()
  586. [00:49] <Filippok> сенькс штирлиц
  587. [00:49] <Filippok> вот
  588. [00:49] <_Reystlin-> понятно
  589. [00:49] <ShTiRLiC> Там как параметр идет твой секретный RSA-ключ
  590. [00:49] <Filippok> если играют через модем, то делаешь хитрую штуку
  591. [00:49] <ShTiRLiC> Публичный должен быть на другом компе
  592. [00:50] <Filippok> у тебя движок должен быть построен на основе паттерна SPL::AppleRot
  593. [00:51] <Filippok> вот
  594. [00:51] <Filippok> туда ты кидаешь эти коробки
  595. [00:51] <Filippok> и всё
  596. [00:51] <Filippok> дальше всё автоматика
  597. [00:51] <Filippok> штирлиц, я ничего не упустил?
  598. [00:52] <Filippok> вопросы?
  599. [00:52] <_Reystlin-> понятно
  600. [00:52] <_Reystlin-> так
  601. [00:52] <_Reystlin-> ещё я вот занаво пробовал писать 3 раза свой движок
  602. [00:52] <_Reystlin-> и ниодин раз неполучилось зделать фрустум:(
  603. [00:52] <_Reystlin-> как он делается то?
  604. [00:52] <ShTiRLiC> Через SPL::AppleRot::PickBox()
  605. [00:52] <ShTiRLiC> Благо, в SPL многое для разработки игр уже сделано
  606. [00:52] <ShTiRLiC> Фрустум-то тебе зачем?
  607. [00:52] <Filippok> хм
  608. [00:52] <_Reystlin-> а вот представь
  609. [00:52] <Filippok> винни
  610. [00:52] <_Reystlin-> город чуть побольше москвы
  611. [00:52] <_Reystlin-> :)
  612. [00:52] <Filippok> ты вроде круто фрустумы делаешь?
  613. [00:53] <_Reystlin-> и он каждый кадр весь прорисовывается
  614. [00:53] <ShTiRLiC> А, так это не через фрустум
  615. [00:53] <_Reystlin-> + в нём каждая травинка прорисована
  616. [00:53] <ShTiRLiC> Тут всё хитрее
  617. [00:53] <ShTiRLiC> Да-да
  618. [00:53] <ShTiRLiC> Я понял
  619. [00:53] <_Reystlin-> ага
  620. [00:53] <Filippok> _Winnie
  621. [00:53] <_Reystlin-> нада делать пирамиду видимости
  622. [00:53] <ShTiRLiC> Просто пишешь три шойдера на HLSL
  623. [00:53] <ShTiRLiC> нет блин
  624. [00:53] <ShTiRLiC> Не надо пирамиду делать
  625. [00:53] <ShTiRLiC> Нужно ТРИ шойдера
  626. [00:53] <Filippok> пирамида устарела
  627. [00:53] <_Reystlin-> а чё такое шойдеры?
  628. [00:53] <ShTiRLiC> Первый будет просматривать данные геометрии
  629. [00:53] <Filippok> типа вид шейдеров
  630. [00:54] <Filippok> тока круче
  631. [00:54] <_Reystlin-> понятно
  632. [00:54] <ShTiRLiC> Да
  633. [00:54] <ShTiRLiC> Это расширение
  634. [00:54] <ShTiRLiC> Shoders
  635. [00:54] <ShTiRLiC> Читается вообще-то как "шоудерс"
  636. [00:54] <ShTiRLiC> Но мы привыкли сокращать
  637. [00:54] <ShTiRLiC> Это расширение шейдеров 3.0 - 3.1а
  638. [00:54] <ShTiRLiC> Итак, первый смотрит в геометрию
  639. [00:54] <ShTiRLiC> Рассчитывает дальность от камеры
  640. [00:55] <ShTiRLiC> Второй замеряет яркость кадра и делает выдержку
  641. [00:55] <ShTiRLiC> Это дает тебе автоматом HDR
  642. [00:55] <ShTiRLiC> Третий отсекает одноцветную и незаметную на фоне геометрию
  643. [00:55] <ShTiRLiC> Камуфляж, короче
  644. [00:55] <ShTiRLiC> Получается иллюзия больших пространств на высокой скорости
  645. [00:56] <ShTiRLiC> SpeedTree именно так и работает
  646. [00:56] <ShTiRLiC> Этого расширения нет в SPL
  647. [00:56] <ShTiRLiC> Нет его и OpenGL
  648. [00:56] <ShTiRLiC> Зато в DX оно встроено на уровне API
  649. [00:56] <ShTiRLiC> Понятно?
  650. [00:56] <Filippok> кста
  651. [00:57] <Filippok> есть его клон
  652. [00:57] <Filippok> работающий под оглом
  653. [00:57] <ShTiRLiC> Ооо
  654. [00:57] <ShTiRLiC> Я догадывался
  655. [00:57] * Reystlin has joined #gamedev_duel
  656. [00:57] <ShTiRLiC> Не могли так обойти
  657. [00:57] <Reystlin> опять:(
  658. [00:57] <ShTiRLiC> Слушай
  659. [00:57] <Reystlin> [00:55:43] <ShTiRLiC> Получается иллюзия больших пространств на высокой скорости
  660. [00:57] <Reystlin> почледнее что я слышал
  661. [00:57] <ShTiRLiC> Иди найди себе стабильную связь
  662. [00:57] <Reystlin> связь стабильная
  663. [00:57] <ShTiRLiC> [00:55:49] <ShTiRLiC> SpeedTree именно так и работает
  664. [00:57] <ShTiRLiC> [00:56:10] <ShTiRLiC> Этого расширения нет в SPL
  665. [00:57] <ShTiRLiC> [00:56:13] <ShTiRLiC> Нет его и OpenGL
  666. [00:57] <ShTiRLiC> [00:56:20] <ShTiRLiC> Зато в DX оно встроено на уровне API
  667. [00:57] <ShTiRLiC> [00:56:34] <ShTiRLiC> Понятно?
  668. [00:57] <ShTiRLiC> [00:57:00] <Filippok> кста
  669. [00:57] <ShTiRLiC> [00:57:04] <Filippok> есть его клон
  670. [00:57] <Reystlin> меня из аськи то не выкидывает
  671. [00:57] <ShTiRLiC> [00:57:11] <Filippok> работающий под оглом
  672. [00:58] <ShTiRLiC> [00:57:14] <ShTiRLiC> Ооо
  673. [00:58] <ShTiRLiC> [00:57:17] <ShTiRLiC> Я догадывался
  674. [00:58] <ShTiRLiC> [00:57:21] <ShTiRLiC> Не могли так обойти
  675. [00:58] <ShTiRLiC> Фаер стоит?
  676. [00:58] <ShTiRLiC> Тебя по пингу выкидывает
  677. [00:58] <Reystlin> да стоит
  678. [00:58] <Reystlin> вырубить?
  679. [00:58] <ShTiRLiC> Да
  680. [00:58] * _Reystlin- has quit IRC (Ping timeout)
  681. [00:58] <Reystlin> всё
  682. [00:58] <Filippok> MADLib
  683. [00:58] <Reystlin> так
  684. [00:58] <Filippok> вот эта либа
  685. [00:58] <Reystlin> я почти ничё не понял
  686. [00:58] <ShTiRLiC> Да, я слышал
  687. [00:58] <Reystlin> есть пример или тсатья по теме?
  688. [00:59] <Reystlin> *статья
  689. [00:59] <ShTiRLiC> Фгугл
  690. [00:59] <Filippok> завтра поищу
  691. [00:59] <ShTiRLiC> Там всё есть
  692. [00:59] <Filippok> или можешь сам
  693. [00:59] <Reystlin> понятно
  694. [00:59] <Reystlin> так
  695. [00:59] <ShTiRLiC> Короче про фрустум забудь
  696. [00:59] <ShTiRLiC> Это устаревший способ
  697. [00:59] <Reystlin> ещё я вот с чем столкнулся
  698. [00:59] <Reystlin> ок
  699. [00:59] <Reystlin> во время разработки движка
  700. [00:59] <Reystlin> начал менять курсор
  701. [00:59] <Reystlin> я работаю в 6 студии
  702. [00:59] <Reystlin> скоро за 2005 пойду:)
  703. [01:00] <Reystlin> так
  704. [01:00] <ShTiRLiC> 2003-ю бери
  705. [01:00] <ShTiRLiC> 2005 отстой
  706. [01:00] <Reystlin> там значит когда создаётся курсор
  707. [01:00] <Reystlin> к
  708. [01:00] <Reystlin> ок
  709. [01:00] <Reystlin> лана
  710. [01:00] <Reystlin> там он автоматом ставится как монохромный
  711. [01:00] <ShTiRLiC> Естественно
  712. [01:00] <Reystlin> в 1 курсоре в 6 студии 3 курсора хранится:)
  713. [01:00] <ShTiRLiC> Включается субпрограмма видеокарты
  714. [01:01] <ShTiRLiC> Для предохранения переполнения фреймбуффера
  715. [01:01] <Reystlin> вот я переключаюсь в 256 цветов
  716. [01:01] <Reystlin> там рисую курсор
  717. [01:01] <Reystlin> и начинаю его грузить
  718. [01:01] <Reystlin> передовая окну
  719. [01:01] <Reystlin> у меня почемуто только монохромный рисуетца
  720. [01:01] <Reystlin> как мне зделать чтобы рисовался тот котороый 256 цветов?
  721. [01:02] <ShTiRLiC> Я ж говорю почему
  722. [01:02] <NULL_PTR> К сожалению вынужден вас покинуть. Пойду спать
  723. [01:02] <NULL_PTR> бб
  724. [01:02] <ShTiRLiC> бб
  725. [01:02] <Reystlin> бб
  726. [01:02] <Filippok> бб
  727. [01:02] * NULL_PTR is now known as NULL_PTR[away]
  728. [01:02] <ShTiRLiC> Никак не сделать
  729. [01:02] <Reystlin> эт плохо
  730. [01:02] <ShTiRLiC> В данном случае работает защита видеобуффера
  731. [01:02] <Reystlin> притёдца текстурить
  732. [01:02] <ShTiRLiC> Переключись в 16 цветов
  733. [01:02] <Reystlin> а как?
  734. [01:02] <ShTiRLiC> Потом с помощью эмуляции 256 рисуй
  735. [01:02] <Reystlin> ээ
  736. [01:02] <Reystlin> а как?
  737. [01:02] <Reystlin> :)
  738. [01:02] <ShTiRLiC> При инициализации OGL
  739. [01:03] <ShTiRLiC> Заполни структуру цветности
  740. [01:03] <Reystlin> а каким образом переключиться?
  741. [01:03] <ShTiRLiC> Потом формализуй её параметры через функторы в бусте
  742. [01:03] <Reystlin> я  с реусурсами работаю
  743. [01:03] <Filippok> glChangeMode()
  744. [01:03] <ShTiRLiC> И аттачь её на экран
  745. [01:03] <ShTiRLiC> Всё просто
  746. [01:03] <ShTiRLiC> В крайнем случае можно обойтись без буста
  747. [01:03] <Reystlin> понятно проще текстуру зделать
  748. [01:04] <ShTiRLiC> Можно поставить дополнение STL
  749. [01:05] <Reystlin> у кого есть пирмерчики с срц под ньютон?
  750. [01:05] <ShTiRLiC> STL++
  751. [01:05] <ShTiRLiC> Текстуры не всегда работают
  752. [01:05] <ShTiRLiC> Если происходит пробой стенсила - всё слетает и надо по новой инитить окно
  753. [01:05] <ShTiRLiC> При чем здесь ньютон?
  754. [01:05] <Reystlin> просто
  755. [01:05] <Reystlin> :)
  756. [01:05] <ShTiRLiC> Ньютон вообще для таких вещей непригоден
  757. [01:05] <Reystlin> ато чтотот я ненашол
  758. [01:05] <Reystlin> :(
  759. [01:06] <Reystlin> это физика
  760. [01:06] <Reystlin> :)
  761. [01:06] <ShTiRLiC> Он конфликтует с своппингом огл
  762. [01:06] <ShTiRLiC> Я знаю, что это физика
  763. [01:06] <ShTiRLiC> Я не дятел
  764. [01:06] <Filippok> много инфы по ньютону есть на сайте http://gamedeff.com
  765. [01:06] <Filippok> но он закрытый
  766. [01:06] <ShTiRLiC> В ньютоне твердотельное моделирование конфликтует со своппингом
  767. [01:07] <ShTiRLiC> Так что там курсор вообще отрисовать проблемно
  768. [01:07] <Filippok> рейст
  769. [01:07] <Filippok> попроси приглашение на этот сайт
  770. [01:07] <Filippok> http://gamedeff.com/invite.html
  771. [01:07] <Reystlin> зафиг?
  772. [01:07] <Filippok> и юзай его ресурсы
  773. [01:07] <ShTiRLiC> Да, тебе должны выдать
  774. [01:07] <ShTiRLiC> В самом деле
  775. [01:07] <Filippok> там всё о ньютоне
  776. [01:07] <ShTiRLiC> И не только
  777. [01:07] <ShTiRLiC> Там есть SPL
  778. [01:08] <ShTiRLiC> И STL++
  779. [01:08] <Filippok> ага
  780. [01:08] <Filippok> и доки по MADLib
  781. [01:08] <ShTiRLiC> Тамошние разработчики и сделали почти что
  782. [01:08] <ShTiRLiC> И как сделать отсечение геометрии не по фрустуму
  783. [01:08] <Filippok> этот сайт круче чем gamedev.ru
  784. [01:08] <ShTiRLiC> Под DX
  785. [01:08] <ShTiRLiC> Бп, бп круче
  786. [01:08] <ShTiRLiC> Потому и закрытый
  787. [01:08] <Filippok> поэтому он закрытый
  788. [01:08] <Filippok> ;)
  789. [01:09] <Reystlin> :)
  790. [01:09] <Reystlin> а кагда атвет придёт?
  791. [01:09] <Reystlin> и куда?
  792. [01:09] <ShTiRLiC> Иначе загадили бы его быстро
  793. [01:09] <Filippok> ответ на мыло
  794. [01:09] <ShTiRLiC> Пиши там
  795. [01:09] <Filippok> кста
  796. [01:10] <ShTiRLiC> Там всё объяснено
  797. [01:10] <Filippok> там нужно написать кто тебя рекомендует
  798. [01:10] <Filippok> напиши, что Volodya
  799. [01:10] <Filippok> а
  800. [01:10] <Filippok> и ещё Lis666
  801. [01:10] <Filippok> они самые уважаемые на этом сайте
  802. [01:10] * _Reystlin- has joined #gamedev_duel
  803. [01:11] <ShTiRLiC> OMG
  804. [01:11] <_Reystlin-> всётаки это не фаервол
  805. [01:11] <_Reystlin-> :(
  806. [01:11] <Filippok> чо последнее услышал?
  807. [01:11] <_Reystlin-> у мя такое первый раз
  808. [01:11] <_Reystlin-> [01:09:26] <ShTiRLiC> Пиши там
  809. [01:11] <ShTiRLiC> Переконнектись
  810. [01:11] <Filippok> [01:09] <Filippok> кста
  811. [01:11] <Filippok> [01:10] <ShTiRLiC> Там всё объяснено
  812. [01:11] <Filippok> [01:10] <Filippok> там нужно написать кто тебя рекомендует
  813. [01:11] <Filippok> [01:10] <Filippok> напиши, что Volodya
  814. [01:11] <Filippok> [01:10] <Filippok> а
  815. [01:11] <Filippok> [01:10] <Filippok> и ещё Lis666
  816. [01:11] <Filippok> [01:10] <Filippok> они самые уважаемые на этом сайте
  817. [01:12] <_Reystlin-> бля
  818. [01:12] * Reystlin has quit IRC (Ping timeout)
  819. [01:12] <_Reystlin-> :)
  820. [01:12] <_Reystlin-> я уже тебя туда вписал
  821. [01:12] <_Reystlin-> :)
  822. [01:12] * _Reystlin- was kicked by ShTiRLiC (Мат)
  823. [01:12] * _Reystlin- has joined #gamedev_duel
  824. [01:12] <_Reystlin-> сори
  825. [01:12] <_Reystlin-> :)
  826. [01:12] <Filippok> ты мудак
  827. [01:12] <ShTiRLiC> Следи за собой
  828. [01:12] <Filippok> тебя не пустят
  829. [01:12] <_Reystlin-> это плохо
  830. [01:12] <Filippok> напиши ещё раз
  831. [01:12] <_Reystlin-> щя
  832. [01:13] <_Reystlin-> всё
  833. [01:14] <Filippok> вот
  834. [01:14] <ShTiRLiC> Теперь жди резюме
  835. [01:14] <Filippok> на днях жди ответ
  836. [01:14] <_Reystlin-> :(
  837. [01:14] <_Reystlin-> лана
  838. [01:14] <_Reystlin-> буду ждать
  839. [01:14] <_Reystlin-> а кстати
  840. [01:14] <_Reystlin-> про ИИ
  841. [01:14] <_Reystlin-> Filippok ты мне обещял расказать
  842. [01:14] <_Reystlin-> :)
  843. [01:15] <Filippok> а да
  844. [01:15] <_Reystlin-> ага
  845. [01:15] <Filippok> точно
  846. [01:15] <Filippok> щас я продумаю план лекции
  847. [01:15] <_Reystlin-> ок
  848. [01:15] <_Reystlin-> помниш задачу?
  849. [01:15] <Filippok> нет
  850. [01:15] <_Reystlin-> есть город
  851. [01:15] <_Reystlin-> который пустой
  852. [01:15] <_Reystlin-> его нада заселить ботами
  853. [01:16] <_Reystlin-> которые бы двигались безпорядочно
  854. [01:16] <_Reystlin-> и на препятствия не натыкались
  855. [01:18] <Filippok> лан
  856. [01:18] <Filippok> поехали
  857. [01:19] * _Reystlin- has quit IRC (Ping timeout)
  858. [01:19] * _Reystlin- has joined #gamedev_duel
  859. [01:19] <Filippok> [01:18] <Filippok> лан
  860. [01:19] <Filippok> [01:18] <Filippok> поехали
  861. [01:19] <_Reystlin-> ага
  862. [01:19] <_Reystlin-> поехали
  863. [01:19] <Filippok> кароче секи
  864. [01:19] <Filippok> есть такая штука как конечные автоматы
  865. [01:20] <Filippok> далее КА
  866. [01:20] <ShTiRLiC> Они отличаются от простых автоматов тем, что у них есть конец
  867. [01:20] <Filippok> она очень похожа на наш пример с пулями
  868. [01:20] <Filippok> да
  869. [01:20] <Filippok> поэтому и строицца на его основе
  870. [01:20] * innochenti has joined #gamedev_duel
  871. [01:20] <Filippok> вобщем смотри
  872. [01:21] <ShTiRLiC> В начало автомата надо класть пулю
  873. [01:21] <Filippok> есть набоп классов для работы с ИИ
  874. [01:21] <Filippok> да
  875. [01:21] <ShTiRLiC> А с конца полуишь результат
  876. [01:21] <Filippok> смотри
  877. [01:21] <ShTiRLiC> Это в общем случае так
  878. [01:21] <Filippok> либа называецца CRAZYAI
  879. [01:21] <_Reystlin-> мне не надо чтобы боты воевали:)
  880. [01:21] <Filippok> тихо
  881. [01:21] <ShTiRLiC> Боты не будут воевать
  882. [01:21] <Filippok> в ней есть класс KA
  883. [01:22] <Filippok> сначала ты аттачиш к небу своих ботов
  884. [01:22] <Filippok> *нему
  885. [01:22] <ShTiRLiC> Если ты не будешь вызывать CRAZYAI::MakeWar()
  886. [01:22] <Filippok> KA::AttachBot()
  887. [01:22] <Filippok> погоди
  888. [01:22] <Filippok> это потом
  889. [01:23] <Filippok> потом ты определяеш набор действий для ботов
  890. [01:23] <Filippok> KA::AddBotAction()
  891. [01:23] * [311][Q3] has joined #gamedev_duel
  892. [01:23] <_Reystlin-> ну
  893. [01:23] <Filippok> параметры функции - это набор действий
  894. [01:23] <_Reystlin-> проатачил
  895. [01:23] * innochenti has left #gamedev_duel
  896. [01:24] <[311][Q3]> Рейстлен, превед
  897. [01:24] <_Reystlin-> ку
  898. [01:24] <Filippok> т.е. если тебе надо, чтобы боты бегали и стреляли пишешь
  899. [01:24] <[311][Q3]> что у теб опять не выходед?
  900. [01:25] <Filippok> KA::AddBotAction(BOT_RUN|BOT_SHOOT);
  901. [01:25] <_Reystlin-> мне надо только чтобы они бегали
  902. [01:25] <_Reystlin-> но не стреляли
  903. [01:25] <Filippok> ну тогда просто
  904. [01:25] <Filippok> KA::AddBotAction(BOT_RUN);
  905. [01:25] <_Reystlin-> :)
  906. [01:25] <Filippok> потом как говорил штирлиц вызываешь CRAZYAI::MakeWar()
  907. [01:25] <Filippok> и о чудо!
  908. [01:25] <Filippok> они начинают бегать!
  909. [01:26] <Filippok> можно ещё и про нейронный сети рассказать
  910. [01:26] <Filippok> но по этому штирлиц спец
  911. [01:26] <_Reystlin-> давай
  912. [01:26] <_Reystlin-> понятно
  913. [01:27] <Filippok> щас
  914. [01:27] <Filippok> он придёт
  915. [01:28] <ShTiRLiC> Нене
  916. [01:28] <ShTiRLiC> Ты накосячил
  917. [01:28] * Filippok slaps ShTiRLiC around a bit with a large trout
  918. [01:28] <ShTiRLiC> MakeWar запускает боевой режим
  919. [01:28] <ShTiRLiC> А надо MakeWalk
  920. [01:28] <[311][Q3]> Штирледс спец по нейросетям?
  921. [01:28] <[311][Q3]> о_О
  922. [01:28] <ShTiRLiC> Да
  923. [01:28] <ShTiRLiC> Я немного участвовал в создании CRAZYAI
  924. [01:28] <[311][Q3]> крейзи
  925. [01:28] <ShTiRLiC> Чисто в разработке ядра
  926. [01:28] <[311][Q3]> хех
  927. [01:28] <ShTiRLiC> Эй
  928. [01:28] <ShTiRLiC> Что за фамильярности?
  929. [01:28] * innochenti has joined #gamedev_duel
  930. [01:29] <ShTiRLiC> Так
  931. [01:29] <ShTiRLiC> Насчет нейронных сетей
  932. [01:29] * Reystlin has joined #gamedev_duel
  933. [01:29] <ShTiRLiC> Основой нейронной сети является - что?
  934. [01:29] <Reystlin> опять:(
  935. [01:29] <Filippok> сеть!
  936. [01:29] * _Reystlin- has quit IRC (Ping timeout)
  937. [01:29] <ShTiRLiC> Нед
  938. [01:29] <Reystlin> ага
  939. [01:29] <ShTiRLiC> Нейрон!
  940. [01:29] <Reystlin> локалка
  941. [01:29] <Reystlin> :)
  942. [01:29] <Reystlin> [01:26:23] <Filippok> но по этому штирлиц спец
  943. [01:29] <Reystlin> вот последнее
  944. [01:29] <Filippok> [01:28] <ShTiRLiC> MakeWar запускает боевой режим
  945. [01:29] <Filippok> [01:28] <ShTiRLiC> А надо MakeWalk
  946. [01:30] <Filippok> [01:28] <[311][Q3]> Штирледс спец по нейросетям?
  947. [01:30] <Filippok> [01:28] <ShTiRLiC> Я немного участвовал в создании CRAZYAI
  948. [01:30] <[311][Q3]> да
  949. [01:30] <[311][Q3]> он шаред
  950. [01:30] <Filippok> вот
  951. [01:30] <[311][Q3]> я ламмир
  952. [01:30] <Filippok> весь лог
  953. [01:30] <Reystlin> понятно
  954. [01:30] <[311][Q3]> но объясню, че к чему
  955. [01:30] <Filippok> штирлиц
  956. [01:30] <ShTiRLiC> Так
  957. [01:30] <ShTiRLiC> вот
  958. [01:30] <Filippok> продолжай
  959. [01:30] <[311][Q3]> кароче
  960. [01:30] <Reystlin> [311][Q3] флоид ты?
  961. [01:30] <ShTiRLiC> Нейрон!
  962. [01:30] <ShTiRLiC> Осонова сети
  963. [01:30] <ShTiRLiC> У нейрона есть начало и конец
  964. [01:30] <[311][Q3]> сети - они состоят из вертексов
  965. [01:30] <[311][Q3]> вот
  966. [01:30] <Filippok> да
  967. [01:31] <Filippok> ещё вертексы иногда называюцца поинтами
  968. [01:31] <ShTiRLiC> Отличаются тем, что конец более чувствительный
  969. [01:31] <ShTiRLiC> На начало подаются координаты бота
  970. [01:31] <[311][Q3]> и они смотрят, какие вертексы попадают ва их поле зрения и делают deffered shading
  971. [01:31] <ShTiRLiC> И что он хочет делать
  972. [01:31] <ShTiRLiC> Или траками
  973. [01:31] <[311][Q3]> да, поинтами
  974. [01:31] <ShTiRLiC> В общем-то да
  975. [01:31] <[311][Q3]> и еще фрейд про них писал
  976. [01:31] <ShTiRLiC> Суть вычисления заключается в Deferred Shading
  977. [01:32] <ShTiRLiC> Тут даже дуэль была
  978. [01:32] <ShTiRLiC> Кто сделает круче ИИ
  979. [01:32] <Filippok> ага
  980. [01:32] <Filippok> она и щас идёт
  981. [01:32] <ShTiRLiC> Оппоненты оказались равны
  982. [01:32] <_Winnie>             TutorSetMsg(L"Перемешай, если застряло"); break;
  983. [01:32] <_Winnie>         case first_layer + halfjokers_layer + flowers + seasons + jokers + superjockers + half_and_half + shuffle_dragons:
  984. [01:32] <_Winnie>             TutorSetMsg(L"Что бы закончить уровень,\\стукни золотые яйца Ктулху"); break;
  985. [01:32] * _Reystlin- has joined #gamedev_duel
  986. [01:32] <[311][Q3]> у них есть дафолтный метод ГОУ_МОЧИТЬ_ВРАГОВ
  987. [01:32] <[311][Q3]> у них есть дефолтный метод ГОУ_МОЧИТЬ_ВРАГОВ
  988. [01:32] <Filippok> да
  989. [01:32] <_Reystlin-> так
  990. [01:32] <_Reystlin-> кароче
  991. [01:32] <[311][Q3]> и они мочат врагов
  992. [01:32] <_Reystlin-> мя опять выкинуло
  993. [01:33] <Filippok> а для эротических игр есть метод GO_FUCK
  994. [01:33] <_Reystlin-> я завтро ещё зайду
  995. [01:33] <ShTiRLiC> Давай
  996. [01:33] <[311][Q3]> задавай вопросы
  997. [01:33] <_Reystlin-> вечером
  998. [01:33] <ShTiRLiC> С сетью разберись
  999. [01:33] <Filippok> давай
  1000. [01:33] <_Reystlin-> бб
  1001. [01:33] <Filippok> всегда рады помочь
  1002. [01:33] <Filippok> бб
  1003. [01:33] <ShTiRLiC> [01:32:27] <_Winnie>             TutorSetMsg(L"Перемешай, если застряло"); break;
  1004. [01:33] <ShTiRLiC> [01:32:27] <_Winnie>         case first_layer + halfjokers_layer + flowers + seasons + jokers + superjockers + half_and_half + shuffle_dragons:
  1005. [01:33] <ShTiRLiC> [01:32:27] <_Winnie>             TutorSetMsg(L"Что бы закончить уровень,\\стукни золотые яйца Ктулху"); break;
  1006. [01:33] <ShTiRLiC> Вот истина
  1007. [01:33] <_Reystlin-> мне щяс нада с текстурами разобарсться:)
  1008. [01:33] * Reystlin has quit IRC (Ping timeout)
  1009. [01:33] * _Reystlin- has quit IRC (Quit: ГОРОД forever!!!)
  1010.  


Editing of pre-version support pastes is disabled.