Как и обещал набросал кое-что. Но от разжовывания С++ части придётся отказаться, а то даже до инициализации ещё не дошёл, а уже начинает смахивать на мануал по С++..
Немного из прошлой темы:
Может такое уже где есть, но пока не попадалось.
Есть идея сделать образцово-показательный двиг, код которого будет устроен таким образом, чтобы новичок, увидев его, сразу понял всё. Без этих ваших заумных мануалов.
Возможно ли? Если да, то каковы перпективы?
В ближайшее время попробую набросать примерный код. В коде будет обучалка по С++ для тех кто недавно на него пересел + обучалка по азам WinAPI + созданию окон + инициализации и использованию DX.
Но в принципе, идея обучения чему-либо (не только движкам и их базовым основам) через код у меня давно.
Конечно есть мануалы в примерах, но они не представляют из себя цельной системы. Тут суть в системном совмещении мануала и кода рабочего приложения. Чтоб кратко и сразу на практике.
Уточнения:
- движок будет не навороченным.
- мой двиг не является образцово-показательным, он лишь служит примером подхода, когда двиг создаётся в обучающих целях.
Не то, чтобы придираюсь, но это как раз яркий образец того, для чего нужен мой двиг: чтобы сразу понять как оно работает,
без беготни по цепочке мануалы -> первая попытка движка -> что-то непонятно, спрашиваем на тематических форумах -> вторая попытка, что-то нарисовалось -> исходники движков -> более-менее нормальный двиг -> исходники нормальных движков + спец.литература -> свой нормальный двиг.
Понимаю, что такой подход считается нормальным, но ведь прогресс не стоит на месте? Почему бы не попробовать этапы мануал + форумы + исходники движков = совместить в одном специализованном движке?
Открыл "GUNgine Шаг1 Кубик". Вроде не тупой, но с ходу ничего непонятно, хотя я уже одолел этап "вторая попытка, что-то нарисовалось".
Epsilon
> образцово-показательный двиг
Epsilon
> обучалка по азам WinAPI
Мое мнение -- плохосочетаемые вещи. Лучше юзать кроссплатформенные библиотеки.
>WinAPI + созданию окон + инициализации и использованию DX
Я считаю, что в образцово-показательном движке вот это не должно торчать наружу:)
Если я использую движок, то значит я хочу писать игру, а не бороться с созданием окошек и инициализации DX. Следовательно, этап создания окошек и другой "низкоуровневой" фигни должен быть спрятан под капотом какой-нибудь простой функции Engine.Init().
У Микрософта в DXTK есть пример простого движка.
UPD: Ошибся. Это было в примерах https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/MiniEngine
Уточнение 2: мой двиг не является образцово-показательным, он лишь служит примером подхода, когда двиг создаётся в обучающих целях.
denesik
> Мое мнение -- плохосочетаемые вещи. Лучше юзать кроссплатформенные библиотеки.
Не могу согласиться полностью. WinAPI -- тоже нужная вещь. Не всё же на кроссплатформе сидеть.
Vitorio
> > inAPI + созданию окон + инициализации и использованию DX
> Я считаю, что в образцово-показательном движке вот это не должно торчать
> наружу:)
См. уточнение №2.
romgerman
> У Микрософта в DXTK есть пример простого движка.
> UPD: Ошибся. Это было в примерах
> https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/MiniEngine
Посмотрел по ссылке -- ничего не понял. Наверное я слишком тупой для новичка :(
Там какой уровень нужен чтобы вникнуть в суть? Неплохой технический английский, и, видимо, неплохое знание С++.
Тема в архиве.