Страницы (8): [1] 2 3 4 5 » ... Последняя » Показать все 109 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Телевизор в ХЛ (https://hlfx.ru/forum/showthread.php?threadid=1040)
Телевизор в ХЛ
Недавно я узнал про AviKit. Эта вещь позволяет воспроизводить avi-файлы внутри игр. Есть даже мод для ХЛ, телик работает по принципу монитора в Xash. Но сорцев мода нету. Я прошу всех заинтересованных помочь в разработке исходников. [Или XaeroX'a выложить то, что он по этому поводу делал ]
Здесь можно скачать мини-мод и исходники демок авикита:
http://randomnine.wootfu.com/project.php?p=18
>> принципу монитора в Xash
Нифига не по принципу мониторов ...
Т.к. ксаш рисует на текстуру , авкит же рисует просто плоскость .... Но впринципе можно сделать и для текстуры , сделайте в движке "второй монтор" и заставьте на него проецировать ролик ...
Кстати там демокарта глючная ... Юзайте мою ...
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Итак, вопрос: как сделать, чтобы энтитя считывалась непосредственно клиентской длл и все её параметры тоже?(естественно, на сервере она уже закреплена за классом)
Я считаю так же как в спирите спрайты на поверхности брашей ?! Это можна присобачить впринципе, но. Есть пару "но"
Вот, поднял старую тему, не плюсуйте плз, мне нужно несколько советов:
1. откуда лучше вызывать загрузку видеоролика?
(Предполагаю, что это Hud_Init)
2. откуда вызвать обновление видеотекстуры(смена кадров) и что за переменную можно использовать в качестве времени воспроизведения?(Hud_Redraw, Hud_Think, CalcRefdef)
3. И есть ли способ не использовать fmod для воспроизведения звука? Или лучше можно ли подгрузить уже загруженную дллку фмода от MP3 плеера, чтобы музыка не остановилась и был звук из ролика?
-CJ- ну хватит уже с умным видом нести фигню
Ну эксперты кругом, куда ни плюнь!
Ku2zoff делай по принципу видеотекстур в ку3.
и вся недолга.
Добавлено 17-03-2008 в 20:11:
1. видеоролики грузить не нужно, они потоком проигрываются, можешь выполнять инициализацию по мессаге.
2. Обновлять из калкрефдеф
3. Вряд ли
Дядя Миша по принципу видеотекстур из ку3? Я исходники глянул, чуть голову не сломал, решил больше в них не возвращаться(пока не закончу мод для ХЛ) Но всё-таки гляну как там сделано. Вообще я за основу взял монитор из ксаша. Я на него проецировал произвольные текстуры, вообще от фонаря взятые. Например детальную текстуру(но как в паранойе у меня всё равно не получилось )...
Придётся ещё качать статик либы фмода...
>>Придётся ещё качать статик либы фмода...
да ты его динамически подключи, в чем проблема-то?
а в кутри очень просто сделано и очень разумно, просто чтобы разобраться нужно время, загляни в cl_video.c
Дядя Миша Ты дату поста смотрел ?
хотя насчет плоскости всеже вохзможно я прав , т.к. в хамере даже задаётся его разрешение ....
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
-CJ- у глупости, равно как и у правды не выходит срок (С)
а если ты не понимаешь что такое плоскость и как она образована - это не моя вина.
А сорьки, не cl_video.c а cl_cin.c
code:
void Draw_StretchRaw (int x, int y, int w, int h, int cols, int rows, byte *data, bool dirty) { int i, j; qglFinish(); GL_Bind(0); qglTexImage2D (GL_TEXTURE_2D, 0, gl_tex_solid_format, cols, rows, 0, GL_RGBA, GL_UNSIGNED_BYTE, data ); qglTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, gl_filter_max); qglTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, gl_filter_max); R_SetGL2D(); qglColor4fv(gl_state.draw_color); qglBegin(GL_QUADS); qglTexCoord2f( 0.5f / cols, 0.5f / rows ); qglVertex2f (x, y); qglTexCoord2f((cols - 0.5f) / cols , 0.5f / rows ); qglVertex2f (x+w, y); qglTexCoord2f((cols - 0.5f) / cols, (rows - 0.5f) / rows ); qglVertex2f (x+w, y+h); qglTexCoord2f(0.5f / cols, ( rows - 0.5f )/rows ); qglVertex2f (x, y+h); qglEnd(); }
code:
void R_NewScreenRenderPass( void ) { if (m_pCurrentScreen) { glBindTexture(GL_TEXTURE_2D, m_pCurrentScreen->texture); if(m_pCurrentScreen->color == 0 && !g_HardwareShaderCapable)//support for old video cards glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE8, 0, ScreenHeight - VIEWPORT_SIZE, VIEWPORT_SIZE, VIEWPORT_SIZE, 0); else glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 0, ScreenHeight - VIEWPORT_SIZE, VIEWPORT_SIZE, VIEWPORT_SIZE, 0); } }
Дядя Миша ты хочешь сказать, что они вызывают glTexImage2D для загрузки кадра текстуры? Кармак что, с перепоя этот код писал? Для кого glTexSubImage2D придумали...
А фмод - он и так загрузится один раз, и все глобальные параметры будут общие. Если ты конечно его как дллку грузишь (динамически или статически - не важно, главное что не либу).
__________________
XaeroX знаешь у меня на 9800 порою glBegin\glEnd работает быстрее чем VBO, поэтому я промолчу про glTexSubImage.
>>поскольку телевизор не требует отдельного прохода
??? я не знал. Вообще хорошо бы чтоб и монитор не требовал, а зеркало только осталось. fmod я загружу динамически, без статик либов, чтоб кашу в коде не делать. Я ещё не смотрел можно ли ставить ролик на паузу. Хотя если там за время ролика считается время аудиопотока, то логично будет рассудить, что если аудио на паузе, то и кадр остановится.
Проблема в размере видеороликов. Если делать их со сжатием, то придётся вместе с модом устанавливать видеокодек.
Временная зона GMT. Текущее время 09:44. | Страницы (8): [1] 2 3 4 5 » ... Последняя » Показать все 109 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024