Войти
ПрограммированиеФорумГрафика

[OpenGL] Подскажите статьи, доки, уроки ( исходники ) по созданию своего рендера на GL 3.2 - 3.3, желательно без использования сторонних библиотек.

Страницы: 1 2 3 4 5 6 Следующая »
#0
13:32, 20 апр. 2019

** доки по созданию реалтайм 3D рендера ( граф.движка ). желательно без использования: SDL`ов, GLFW`ов, GLM`ов, GLEW`ов.

** описание того, что должно быть, а чего не должно быть. а также того, как оно должно работать.


#1
(Правка: 14:17) 14:16, 20 апр. 2019

Ну тебе много предстоит работы тогда.
1)Изучи поверхносто WinAPI(создать окно, перехват событий мыши и клавиш)
2)Далее через WinAP подружаешь указатели на функции OpenGL через DLL
3) Создаешь контекст  OpenGL
4) Выводишь свой треугольник
5) Изучаешь линейную алгебру и пишешь свой GLM

#2
14:22, 20 апр. 2019

Panur
Наивный! Интересно сколько жизней у тебя уйдёт, чтоб что-то годное написать без сторонних библиотек? Или без физический движков: Bullet Physics, Chrono, Nvidia PhysX и т.д.? ))))

#3
14:29, 20 апр. 2019

В сообществе OpenGL уроки, там как раз все создается без посторонних библиотек

https://gamedev.ru/community/ogl/

#4
15:17, 20 апр. 2019

Panur
А какой, если не секрет, смысл?
Уж до чего я консервативно отношусь к левым движкам и фреймворкам, но GLEW и GLM мне очень сильно облегчают работу, ни сколько не мешая самостоятельно писать движок.

#5
15:26, 20 апр. 2019

Panur
Ну смотри...

Не все библиотеки рождаются на пустом месте. Некоторые из них реально сокращают количество времени которое тратиться на разработку.

Например, можно потратить пару дней/недель на написание собственного вропера который достает функции. А можно взять GLEW.
Можно потратить пару недель/месяцев на написание собственной библиотеки для работы с линейной алгеброй. А можно взять GLM.
Можно потратить пару недель/месяцев/лет на написание собственной библиотеки для загрузки изображений, а можно взять DevIL.

Я не говорю что не надо писать свое. Просто если не разбираться в теме то можно потратить больше времени и получить худший результат.
В образовательных целях можно написать свой маленький врапер для функций, линейной алгебры, загрузки изображений, физики. Но я не знаю есть ли смысл работать с ним все время.
Ну и да, взглянуть на сторонние решения точно стоит.

На шагах3D есть парочка уроков, еще здесь в сообществах кто-то когда-то выкладывал уроки.
А вообще говоря есть The Red Book и OpenGL SuperBible.

#6
(Правка: 15:51) 15:47, 20 апр. 2019

Great V.
Ну на счёт DevIL ты немного перегнул :) вот здесь как раз имеет смысл написать парсер для KTX-формата, тем более, что его гораздо легче парсить, чем тот же DDS...

#7
17:39, 20 апр. 2019

https://github.com/JoeyDeVries/LearnOpenGL
https://github.com/bagobor/opengl33_dev_cookbook_2013
https://github.com/glcoder/gl33lessons

#8
(Правка: 19:33) 19:32, 20 апр. 2019

Благодарю всех за ответы. ( советы )

Funtik

со временем проблем нет. поскольку я не собераюсь создавать "шедевр".

Daniil Petrov

смысла ( выгоды ? ) никакого нет. я делаю это только для себя.

#9
22:02, 20 апр. 2019

Daniil Petrov
> Ну на счёт DevIL ты немного перегнул
Ты имеешь ввиду оценку времени необходимого на реализацию его функционала?
Я вообще не вижу особого смысла писать все эти декодеры самому. Разве что декодер это и есть твой основной проект.

#10
(Правка: 23:54) 23:48, 20 апр. 2019

Panur
> смысла ( выгоды ? ) никакого нет. я делаю это только для себя.
Ясно, что не для дяди Вани :) я имею в виду какой смысл писать всё самому?

Great V.
Если разрабатывать движок с таким отношением к геймерам, как сейчас разрабатываются игры, например, Бетесдой, то тут бесполезно что-либо говорить...
Нормальные разработчики всё, что возможно, выносят в оффлайн, а не перекладывают этот геморрой на геймера. Мне тут один человек рассказывал, как работал в команде над одним проЭхтом, они его так и зарелизили с кучей ненужного мусора, который не хватило добросовестности подчистить за собой и который геймерам приходится качать вместе с игрой. Вот там да = все форматы текстовые и ещё не пойми чего навелосипедили... я бы такое говно не купил!
А вообще удачки :) представляю ламерский движок на всяких там Assimp и DevIL ))) сразу видно, что делается не для людей!
P.S. Если делается чисто для себя, то тут другой разговор, но в большинстве случаев всё таки подразумевается конечный релиз...

#11
2:36, 21 апр. 2019

Daniil Petrov
> представляю ламерский движок на всяких там Assimp и DevIL
Ты серьезно? Пофиг на девил, он старый как мир. Но в чем проблема асимпа?
Ты реально считаешь что есть смысл писать собственный загрузчик fbx/png?

#12
(Правка: 5:02) 3:31, 21 апр. 2019

Great V.
> Ты серьезно?
Более чем! При всём том, что я пишу движок под проекты, которые собираюсь разрабатывать и продвигать сам, я не обламываюсь писать нормальный тулсет, потому что уважаю себя и геймеров! А в тебе я не вижу человека, с которым есть, о чём говорить! Видно твоё неуважительное отношение к пользователям твоего протухта, в котором все стороны кубмап грузятся отдельно, конвертируются в нативных формат видеокарты и генерируются мипы... Удачки!

#13
5:03, 21 апр. 2019

Great V.
> Ты серьезно? Пофиг на девил, он старый как мир. Но в чем проблема асимпа?
> Ты реально считаешь что есть смысл писать собственный загрузчик fbx/png?
Справедливости ради, fbx лучше грузить специальным sdk от autodesk, а png через libpng.

#14
(Правка: 5:45) 5:26, 21 апр. 2019

Dimich
> Справедливости ради, fbx лучше грузить специальным sdk от autodesk, а png через libpng.
У меня, например, свои форматы и конвертеры:

1) Текстуры жмутся в BC4-BC7 или не жмутся, если это Look Up Table, и сохраняются с мипами / без мипов в одиночные текстуры / массивы текстур, контейнер свой, чтоб в движке ничего не подсчитывать, а прямо грузить в видеокарту.
2) Модели пока только статичные, сохраняются в VBO-формате с двумя BBox = для Frustum Culling и Occlusion Query.
3) Шейдеры соответственно в SPIR-V, а когда будет скриптование, скрипты Lua тоже будут компилироваться.
+ Скриншот

Привык всё делать качественно :) заодно не будут ковыряться разные халявщики, падкие на чужие ресурсы ))) такие обычно качают игры с торрентов, не покупают...
P.S. И да, используются Assimp (в будущем будет FBX SDK) и FreeImage, но в конвертерах, а никак не в движке!
Страницы: 1 2 3 4 5 6 Следующая »
ПрограммированиеФорумГрафика