Лайк за работу. Я просто знаю как это кодить. Тут к паше такой вопрос... А что если на ассемблере закодить этакий конструктор Уровней Марио. Только классика только хардкор. Я нашел такой на джаве. Сделал 5 игр. Но для них нужна джава. А вот на ассемблере думаю будет удобней создать уровни и скомпилировать их в полноценную игру. Также приглашаю в гости, чтобы посмотреть, как это выглядит.
С++ 48% - новая версия ассемблера? А на самом деле хорошая работа. Я вот только в консоли на C++ работать умею. Если прям всё с нуля- достойно уважения
@Itzmixitguy Нет, С++ это современный язык программирования. Скоро я сниму видео про свою 3D-игру на С++ и может сделаю обзор структуры проекта и кода, так что если интересно, можешь подписаться.
@Itzmixitguy Я в ролике это упоминал, ты если нажмешь на вкладку 48% С++ то увидишь файлы, который гитхаб приписывает к С++, можешь глянуть, там только .inc
Проект хоть не мой, но разбор структуры игры могу сделать. Я просто еще планирую выложить видео по своему проекту (3D игра, пока что только демка) на С++ и вот там сделать полный разбор
Ну, начало хорошее (хоть язык вменяемый выбран) - но. Во-первых, один фиг всё на WinAPI, ещё и с OpenGL (нахрена в Windows OpenGL, если там DX роднее и функциональнее?) - но при этом выглядит это всё как нативка на какой-нибудь AVR - ни графики, ни производительности... Во-вторых, оптимизация. Какие-то штучные вызовы без причины (какой смысл в асме тогда, если так же выдаст любой компилятор в дебажной сборке? Макросы-то для чего сделаны, ага?), ещё и glRectf на каждый пиксель(!) - да тут "оптимизация" такая, что Unreal Engine 6, наверное, так систему не заколбасит :) Что мешало тупо кадровый буфер в DXGI гнать, не привлекая всякие GL и т.п.? Асмовые сборки, как бы, только ради оптимальности и делаются - а тут вот так вот, ещё и без SSE, ещё и с пикселями, хотя даже на плюсах с интринзиками пишутся отличные рейтрейсеры вообще без привлечения видеокарты (личный рекорд - 50 FPS с четырьмя переотражениями, глубиной резкости, мягкими тенями и Френелем - в FullHD на бучном i5-11400H).
Друг писал этот проект для учебной конференции, где все проекты написаны на ассемблере, поэтому выбор ассемблера был осуществлен не по принципу соображений эффективности, а по принципу требований. И проект писал мой друг Паша, а не я, поэтому на остальные вопросы ответить не смогу)
@ Да честно говоря, какой-то этот код "не-ассемблерный": слишком много вызовов, не хватает всяких мулек в духе процедур с несколькими точками входа - но сразу сильно глаз режет таблица переходов в обработчике сообщений: зачем каждую вилку автомата завершать переходом(!) на общий для всей процедуры ret, при чём зануление возвращаемого значения при этом каждый раз делать отдельно? Тогда уж сразу - каждой вилке свой возврат...
ДиректХ не слишком удобно использовать в ассемблере из-за вызова виртуальных функций, OpenGL намного проще, особенно на UASM. В прочим можно использовать и просто GDI+
Жду циву седьмую на ассемблере
Это очень красивый аналог Марио
Что за лев этот Паша)
Ваша фамилия случаем не начинается на Б?
Дио долбанулся головой и попал в Марио?
Лайк за работу. Я просто знаю как это кодить. Тут к паше такой вопрос... А что если на ассемблере закодить этакий конструктор Уровней Марио. Только классика только хардкор. Я нашел такой на джаве. Сделал 5 игр. Но для них нужна джава. А вот на ассемблере думаю будет удобней создать уровни и скомпилировать их в полноценную игру. Также приглашаю в гости, чтобы посмотреть, как это выглядит.
Это очень впечатляет!
а я фронендер
лайк
Тот самый чел, который делает игру на C++ и смотрит, как она компилируется в ассемблере:
С++ 48% - новая версия ассемблера? А на самом деле хорошая работа. Я вот только в консоли на C++ работать умею. Если прям всё с нуля- достойно уважения
@Itzmixitguy Нет, С++ это современный язык программирования. Скоро я сниму видео про свою 3D-игру на С++ и может сделаю обзор структуры проекта и кода, так что если интересно, можешь подписаться.
@ Я знаю, просто на гите написано, что проект использует 48% C++
@Itzmixitguy Это потому что гитхаб считает .inc файлы файлами С++ файлами, в этом проекте нет С++
@Itzmixitguy Я в ролике это упоминал, ты если нажмешь на вкладку 48% С++ то увидишь файлы, который гитхаб приписывает к С++, можешь глянуть, там только .inc
Класс!
так а будет что то типо разбора кода? было б интересно посмотреть
Проект хоть не мой, но разбор структуры игры могу сделать. Я просто еще планирую выложить видео по своему проекту (3D игра, пока что только демка) на С++ и вот там сделать полный разбор
@@Mishanya00 ну вас интересно смотреть) так что жду роликов
Дум когда?
Бро, на сколько ты можешь оценить свои навыки по Ассемблеру?
5/10
почему марио выглядит как дио из jojo?
Потому что DIO's World :)
Ну, начало хорошее (хоть язык вменяемый выбран) - но. Во-первых, один фиг всё на WinAPI, ещё и с OpenGL (нахрена в Windows OpenGL, если там DX роднее и функциональнее?) - но при этом выглядит это всё как нативка на какой-нибудь AVR - ни графики, ни производительности... Во-вторых, оптимизация. Какие-то штучные вызовы без причины (какой смысл в асме тогда, если так же выдаст любой компилятор в дебажной сборке? Макросы-то для чего сделаны, ага?), ещё и glRectf на каждый пиксель(!) - да тут "оптимизация" такая, что Unreal Engine 6, наверное, так систему не заколбасит :) Что мешало тупо кадровый буфер в DXGI гнать, не привлекая всякие GL и т.п.? Асмовые сборки, как бы, только ради оптимальности и делаются - а тут вот так вот, ещё и без SSE, ещё и с пикселями, хотя даже на плюсах с интринзиками пишутся отличные рейтрейсеры вообще без привлечения видеокарты (личный рекорд - 50 FPS с четырьмя переотражениями, глубиной резкости, мягкими тенями и Френелем - в FullHD на бучном i5-11400H).
Друг писал этот проект для учебной конференции, где все проекты написаны на ассемблере, поэтому выбор ассемблера был осуществлен не по принципу соображений эффективности, а по принципу требований. И проект писал мой друг Паша, а не я, поэтому на остальные вопросы ответить не смогу)
@ Да честно говоря, какой-то этот код "не-ассемблерный": слишком много вызовов, не хватает всяких мулек в духе процедур с несколькими точками входа - но сразу сильно глаз режет таблица переходов в обработчике сообщений: зачем каждую вилку автомата завершать переходом(!) на общий для всей процедуры ret, при чём зануление возвращаемого значения при этом каждый раз делать отдельно? Тогда уж сразу - каждой вилке свой возврат...
ДиректХ не слишком удобно использовать в ассемблере из-за вызова виртуальных функций, OpenGL намного проще, особенно на UASM. В прочим можно использовать и просто GDI+
Почти поверил, но автор ролика спалил использование opengl 🤣
@@Alexandrage. Так нигде это и не скрывалось