
Читать | Комментарии [19]
9 окт. 2020
Читать | Комментарии [19]
9 окт. 2020
Читать | Комментарии [25]
3 июня 2020
Читать
5 июня 2018
Читать | Комментарии [19]
8 дек. 2017
Читать
10 мая 2020
Ссылка | Комментарии [67]
8 апр. 2020
Ссылка | Комментарии [7]
4 мар. 2019
Рейтрейсинг позволяет достичь расчета реалистичного освещения, теней и материалов. Классические технологии вывода графики в компьютерных играх основаны на растеризации, но, несмотря на большой прогресс в алгоритмах, реалистичность генерируемых изображений все равно имеет ряд проблем. Растеризация в целом работает по другому принципу, чем визуальное восприятие человека. Рейтрейсинг, в свою очередь, достаточно близко описывает поведение физического процесса.
Ссылка | Комментарии [504]
20 мар. 2018
P.S. Не забудьте включить полноэкранный режим просмотра.
Ссылка на доклад: http://www.goo.gl/6DoH7R
Ссылка
27 янв. 2015
Bullet Physics, фильтрация контактов | 16 янв. 2021 | 18:06 | DEN 3D |
---|
Допустим, есть два тела, созданные средствами Bullet, и они в данный момент времени касаются друг друга, контачат, причём в нескольких местах - одна точка контакта внизу, другая сверху сбоку. То есть, точки контактов имеют разные нормали и позиции.
Вопрос - можно ли перехватить контакты заранее, до их применения (типа как PreSolve в Box2D) и отменить именно боковой контакт?
Не замутить ли нам анонимный TCP? | 16 янв. 2021 | 11:11 | Barbar1an |
---|
а что если, мы будем нам каждом шаге роутинга менять адрес но запоминать соотвествие?
и нагнать ажиотаж так чтобы производители были вынуждены его поддерживать
это конечно идеальная тема и для хакинга и ддосинга, но от ДДОСинга и так никакой защиты нет и не может быть, а хакер легко скроет свои следы через левую зараженую тачку, так что ничего не меняется в плане безопасности
зато теперь чтото заблокировать на уровне IP будет нереал
Правка: 11:14
gdi рамка вокруг экрана | 16 янв. 2021 | 10:16 | SmoothBoy |
---|
Вот мой код работы GDI в программе:
bool CMeshManager::BuildBackBuffer(ULONG Width, ULONG Height ) { HDC hDC = ::GetDC( hWnd ); if ( !hdcBackBuffer ) hdcBackBuffer = ::CreateCompatibleDC( hDC ); if ( hbmBackBuffer ) { ::SelectObject( hdcBackBuffer, hbmSelectOut ); ::DeleteObject( hbmBackBuffer ); hbmBackBuffer = NULL; hbmSelectOut = NULL; } hbmBackBuffer = CreateCompatibleBitmap( hDC, Width, Height ); if ( !hbmBackBuffer ) return false; hbmSelectOut = ( HBITMAP)::SelectObject( hdcBackBuffer, hbmBackBuffer ); ::ReleaseDC( hWnd, hDC ); ::SetBkMode( hdcBackBuffer, TRANSPARENT ); return true; } void CMeshManager::ClearBackBuffer( ULONG Color ) { LOGBRUSH logBrush; HBRUSH hBrush = NULL, hOldBrush = NULL; logBrush.lbStyle = BS_SOLID; logBrush.lbColor = RGB( 255, 255, 255) ; hBrush = ::CreateBrushIndirect( &logBrush ); if ( !hBrush) return; hOldBrush = ( HBRUSH)::SelectObject( hdcBackBuffer, hBrush ); Rectangle( hdcBackBuffer, nViewX, nViewY, nViewWidth, nViewHeight ); ::SelectObject( hdcBackBuffer, hOldBrush ); ::DeleteObject( hBrush ); } void CMeshManager::PresentBackBuffer( ) { HDC hDC = ::GetDC( hWnd); ::BitBlt( hDC, nViewX, nViewY, nViewWidth, nViewHeight, hdcBackBuffer, nViewX, nViewY, SRCCOPY ); ::ReleaseDC( hWnd, hDC ); }
Оптимален ли Unreal Engine для небольшой 3д игры для ПК | 15 янв. 2021 | 22:08 | Finder_D |
---|
Правка: 22:15
С чего начать изучения программирования игр в 2021 году | 15 янв. 2021 | 20:32 | unlimeted |
---|
Генерация первичных лучей для трассировки | 15 янв. 2021 | 13:42 | max64rus |
---|
Непонятка со сферической системой координат | 14 янв. 2021 | 22:33 | max64rus |
---|
Godot: объект видимый в редакторе, но невидимый в игре | 14 янв. 2021 | 18:57 | Robotex |
---|
У меня есть несколько типов spawn-позиций: bonusSpawn, playerSpawn, enemySpawn. Это просто Position2D с дочерним спрайтом-иконкой, обозначающей тип.
Самое простое, что приходит в голову это просто сделать ему visible = false в функции _ready или просто удалить чайлд.
Но может быть существует более правильный способ реализации этого, не требующий выполнения дополнительного кода? Или именно так и нужно это делать?
CircleCI сборка под Android | 14 янв. 2021 | 18:01 | IROV.. |
---|
Решил движок Mengine настроить CI под сборку Android Studio
вот файл настройки CircleCI: config.yml
вот результат работы: сылка
а вот и ошибка которая мешает мне собрать
хотя библиотека собирается, но в папку с lowercase 'debug'
настройка сборки для openal: OpenAL32/build.gradle
подключаю уже в основном app/build.gradle
но я не нашел место где я влияю на этот lowercase или uppercase 'debug'
**сейчас закомиченно тестовое не правильное указание CMake - debug с маленькой. (ревертну вечером)
Может кто то встречал такое или есть идеи как починить?
Спасибо.
Правка: 18:02
На github когда-то находил переписанные функции типа D3DXVec3TransformCoord. | 14 янв. 2021 | 14:57 | ronniko |
---|
Были функции типа такие.
void Matrix4x4::Transform(Vector3 &oPoint ) { float fX = oPoint.GetX( ); float fY = oPoint.GetY( ); float fZ = oPoint.GetZ( ); oPoint.SetX( fX * this->matrix[0][0] + fY * this->matrix[0][1] + fZ * this->matrix[0][2] + this->matrix[0][3]); oPoint.SetY( fX * this->matrix[1][0] + fY * this->matrix[1][1] + fZ * this->matrix[1][2] + this->matrix[1][3]); oPoint.SetZ( fX * this->matrix[2][0] + fY * this->matrix[2][1] + fZ * this->matrix[2][2] + this->matrix[2][3]); }
Правка: 15:09