Я Написал Свой ИГРОВОЙ Движок С Нуля!

  Рет қаралды 17,332

геймдев маслёнок

геймдев маслёнок

Күн бұрын

Захотел изучить то, как работает рейкастинг, а в итоге написал целый игровой движок. Для написания движка я использовал язык Python и библиотеку Pygame. Все материалы из этого видео доступны ниже!
Таймкоды:
00:00 - Как пришла идея написать движок
00:45 - Ищем материалы и ботаем
02:23 - Как работает Raycasting
03:19 - Первые версии движка
03:40 - Первые баги :)
04:06 - Улучшаем движок
05:33 - Что дальше?
Все, что я использовал для создания движка:
• Creating a DOOM (Wolfe...
• Raycasting Algorithms ...
• Ray casting fully expl...
• How Games Have Worked ...
#gamedev #pygame #python

Пікірлер: 187
@TRIXMAN
@TRIXMAN 13 күн бұрын
Это видео выглядит, как перезалитое с какого-то популярного канала. Интересно, динамично, большой респект)
@maslenokyo
@maslenokyo 12 күн бұрын
Не перезалив, только начинаю снимать)
@user-cg8iv8gq2g
@user-cg8iv8gq2g 10 күн бұрын
vectozavr kanal posmotri
@WildLizzard
@WildLizzard 9 күн бұрын
Так и есть. Основа заложенная Кармаком которую сей мистер скопипастил. Все уже давно придумано и все давно уже есть в открытом доступе
@R1S1SKA
@R1S1SKA 8 күн бұрын
​@@maslenokyo не слушай их, красавчик круто сделал)
@wolfdobrov
@wolfdobrov 9 сағат бұрын
@@WildLizzardи что, он же делает сам, давай вообще перестанем выпускать любые видосы по любым темам так как все уже давно было где-то
@ggInzox
@ggInzox 8 күн бұрын
Да начнется срач между людьми которые не разу не писали на Python но по мемам думают что он такой себе !!!
@stalker32041
@stalker32041 3 күн бұрын
Я пишу код на Python и он хорош, да попробуйте воспользоваться Cython, все кто против
@shizzonotes
@shizzonotes 4 күн бұрын
Кто из питонистов в припадке юношеского энтузиазма не баловался с рейкастингом. По сути, особенность такой графики заключена в одной функции рендеринга. Движок от демки отличает наличие простого редактора, поэтому ждём редактор. Я когда-то давно делал рейкаст игрушку, напридумывал алгоритмы, но без редактора работа с самописным "движком" была очень душной. Хорошие видосы! Удачи в развитии канала)
@mrwek
@mrwek 3 күн бұрын
Мне кажется, что движок от демки не отличает наличие интерфейса. Движок может быть и без интерфейса, а может быть просто удобным фреймворком, но не движком : D Тут скорее от всего функционала зависит, а не только от наличия интерфейса. (но я впринципе много игровых движков не знаю, поэтому в пример мне привести нечего)
@wolfdobrov
@wolfdobrov 9 сағат бұрын
@@mrwek кто сказал что редактор должен иметь интерфейс 😏
@mrwek
@mrwek 9 сағат бұрын
@@wolfdobrov кстати да, интересный ход мыслей : D
@Alex_Gid
@Alex_Gid 11 күн бұрын
Вкусная подача, продолжай, удачки! с:
@francheskodown
@francheskodown 10 күн бұрын
Хорошая подача, продолжай, и удачи с дижком
@PythonIsGo
@PythonIsGo 6 күн бұрын
Красава! Продолай в том-же духе!
@user-kh5eq2og1z
@user-kh5eq2og1z 14 күн бұрын
Отличная работа!
@dikem_
@dikem_ 11 күн бұрын
Очень хороший ролик, продолжай в том же духе!
@kmaky
@kmaky 13 күн бұрын
Если я правильно понимаю, то ты использовал сеточную систему отрисовки объектов. Т.е. ты задаёшь рисунок на полу, а высота блоков достраивается автоматически и скорее всего одинаково для всех объектов одного типа. В глубокой теории это может жить, но как по мне куда интереснее будет изучить рендер на основе вершин. Плюс это тебе даст возможность рендерить объекты напрямую из блендера или другого приложения для моделирования
@doodocina
@doodocina 11 күн бұрын
какой еще "глубокой теории"? 😂 видели игрушку такую, дум называется? там прекрасно реализовали разную высоту стен, разную высоту пола, сложную геометрию. другое дело, что автор не программист и, скорее всего, остановится на том, что у него сейчас есть
@python-god
@python-god 7 күн бұрын
@@doodocina утверждать ничего нельзя, я надеюсь что проект будет жить и всё это хотя-бы перерастёт в клон дума или вульфенштейна на пайтоне
@alexperemey6046
@alexperemey6046 6 күн бұрын
@@python-god Мне кажется не сделали еще тот компьютер, на котором пойдет клон дума на пайтоне ).
@python-god
@python-god 15 сағат бұрын
@@alexperemey6046 клон дума на пайтоне можно запустить где угодно в 30-60 фпс гарант. Посмотри об этом ролики на ютубе
@Vorono4ka
@Vorono4ka 9 күн бұрын
Прикольно вещаешь, мне зашло!
@Super_sonic228
@Super_sonic228 10 күн бұрын
Классное видео. Продолжвй в том же духе
@KynomiFn
@KynomiFn 4 күн бұрын
Очень крутая подача, с 1 минуты думал, что попал на 1 млн подписчиков канал, а видео старенькое, просто только сейчас попалось мне в рекомендации. Когда пролистал в комментарии удивился, что всего 571 подписчик.
@ruberoid36
@ruberoid36 8 күн бұрын
чувак, ты очень крут, продолжай
@bludrunn3r560
@bludrunn3r560 9 күн бұрын
Хотим продолжения!
@tezis2588
@tezis2588 10 күн бұрын
классный ролик, жду продолжение
@python-god
@python-god 7 күн бұрын
Круто! Если будешь добавлять всё больше нового в свой "псевдо-3D движок", то он может стать неплохой альтернативой ursina, panda3d или может быть даже Godot! Однозначно подписка + лайк! Видос очень зашёл, жду продолжения. Сделай какой-нибудь удобный редактор карты, где можно будет просто редактировать твой двумерный массив карты, а также управлять текстурами на блоках
@Anton-jl2uh
@Anton-jl2uh 6 күн бұрын
Да чего уж там, давай сразу альтернативой Unreal Engine)
@alexperemey6046
@alexperemey6046 5 күн бұрын
Альтернативой Годот не станет, поскольку Годот - это не 3D движок.
@python-god
@python-god 5 күн бұрын
@@alexperemey6046 годот это 3д движок.... посмотрите в интернете
@python-god
@python-god 5 күн бұрын
@@Anton-jl2uh замах интересный, но анрил всё-же будет побыстрее
@vorongo
@vorongo 10 күн бұрын
полезно и интересно, спасибо)
@solowauy
@solowauy 9 күн бұрын
Спасибо очень классное видео!
@tymurkr
@tymurkr 8 күн бұрын
Вижу, канал новый, аудитории ещё не набралось, но могу пожелать удачи, у тебя есть большие потенциал, и если не будешь сдаваться, то канал станет успешным.
@AzatAndAziz
@AzatAndAziz 10 күн бұрын
У тебя большое будущее, отвечаю)
@maslenokyo
@maslenokyo 10 күн бұрын
Спасибо, увидим)
@frolish1337
@frolish1337 11 күн бұрын
быстро, понятно, круто!
@user-ho3lh1gy4m
@user-ho3lh1gy4m 11 күн бұрын
Отличное качество для самого первого видео на канале! Отличный монтаж, сочное превью, сценарий динамичный, а время видео - просто золотое сечение! Уверен, в будущем твой канал сможет стать 100 тысячником, если не милионником! Не сбавляй темп, ведь твой контент просто топчик! ❤
@maslenokyo
@maslenokyo 10 күн бұрын
Спасибо, дружище)
@wolfdobrov
@wolfdobrov 9 сағат бұрын
@@maslenokyo да, качество топ, такие каналы обычно быстро набирают, главное темп выпуска не сбавляй
@_SOMEONE_
@_SOMEONE_ 10 күн бұрын
Я твой 134 подписчик! Надеюсь когда-то канал взлетит и я стану олдом)
@maslenokyo
@maslenokyo 10 күн бұрын
Я тебя запомню ;)
@user-cc9nm3si8k
@user-cc9nm3si8k 4 күн бұрын
Жду продолжения с объяснением математике❤
@raychaser29
@raychaser29 9 күн бұрын
недавно услышал интересную идею по поводу улучшения рейкастера. можно попробовать добавить небольшой постпроцессинг впихнув в рендер текстур карты нормалей. в теории можно будет даже без шейдеров обойтись. ещё советую почитать про рендер полов в рейкастинге, если ты этого ещё не сделал разумеется. ну и да, выглядит очень круто для канала с таким маленьким количеством подписчиков, надеюсь что увижу взлёт твоего канала среди ру геймдев сектора хд
@alexperemey6046
@alexperemey6046 5 күн бұрын
Так чем более сложные и специфические вещи, тем меньше подписчиков на канале. Популярные ресурсы с серьезным контентом по программированию - это 20-40К подписчиков максимум...
@drevnii7341
@drevnii7341 6 күн бұрын
Когда я баловался с рейкастом, я вышел на пределы карты, и в итоге карта генерировалась процедурно, т.к. из оперативы бралось куча мусора (вышел т.к. рукожопно написал ограничение)
@slie4ik
@slie4ik 3 күн бұрын
Я когда то занимался таким было трудно но интересно, но я хотел бы увидеть позде возможность быстро собирать игры❤
@caf276
@caf276 10 күн бұрын
Как называется тема в vs code?
@idioticgamedev
@idioticgamedev 11 күн бұрын
мегахорош, лайк)
@jonypro2
@jonypro2 16 сағат бұрын
хмм довольно интересная подача. Если бы я не знал все термины, всё равно бы понял
@e1ont
@e1ont 5 күн бұрын
Ебаный рот, смотря подобные видосы, я понимаю, насколько я эмбрион в программировании и даже не знаю, хватит ли мне вообще сил сделать хотя бы что-то примерно похожее (сейчас 20-й день изучения C#).
@maslenokyo
@maslenokyo 4 күн бұрын
Не важно, с какой скоростью двигаешься, братишка, главное не останавливайся
@wolfdobrov
@wolfdobrov 9 сағат бұрын
Ахаха, жиза, тоже шарп изучаю и по совместительству первый мой язык, чувство что я одноклеточный меня не покидает
@AlexMorgan322
@AlexMorgan322 9 күн бұрын
Продолжай!
@pcclassic
@pcclassic 20 сағат бұрын
ВалюА!))))))))))
@KirillNadtochaev
@KirillNadtochaev 9 күн бұрын
Крутой ролик❤
@thrji-plus-kerf-plus-kera
@thrji-plus-kerf-plus-kera 9 күн бұрын
Очень интересно
@user-ck2ij6qc4h
@user-ck2ij6qc4h 9 күн бұрын
прикольно :)))
@israinddertou5973
@israinddertou5973 14 күн бұрын
И да, лучше изучи bsp алгоритм и сделай что нибудь по типу квейка 1 или дума, куда интереснее будет)
@artembaranov8456
@artembaranov8456 9 күн бұрын
что за шрифт у тебя?
@AdskiyDr04ila
@AdskiyDr04ila 13 күн бұрын
Блин, крутой видос, жду продолжение
@Atomnyi
@Atomnyi 9 күн бұрын
О! Вероятно это видео Smilesick было! )
@atverca1377
@atverca1377 12 күн бұрын
Давай ещё!
@makstv8888
@makstv8888 10 күн бұрын
конечно делай
@VRchitecture
@VRchitecture 10 күн бұрын
Брух… Голый рэйкаст, который писать от силы день - далеко не весь игровой движок 🤷🏻‍♂️
@alexperemey6046
@alexperemey6046 9 күн бұрын
Как бы все зависит от игры. Игровой движок - это не что-то из области магии и единорогов - это просто базовый алгоритм, который описывает всю механику твоей игры.
@muskat_
@muskat_ 10 күн бұрын
гуд видео
@timurmingulov1535
@timurmingulov1535 6 күн бұрын
Где ссылка на гитхаб? По поводу продолжения - продолжай. Выбери как куллить стены - порталам или bsp.
@nemopss
@nemopss 11 күн бұрын
Хорошая работа! Жду продолжения!
@HitsarOrig
@HitsarOrig 6 күн бұрын
Я написал игровой движок на юнити В нём есть комната где спавнятся враги и ты с пистолетом по ним стреляешь и набираешь очки Это лучший игровой движок:3
@letovintaiga
@letovintaiga 2 күн бұрын
Ты написал движок на движке?
@HitsarOrig
@HitsarOrig 2 күн бұрын
@@letovintaiga не, это угар просто
@Connordis
@Connordis 11 күн бұрын
Круто
@KoTBMeLLIke098
@KoTBMeLLIke098 9 күн бұрын
DOOM 1993 года самый первый шутер на примерно таком движке
@alexander_voronin
@alexander_voronin 21 сағат бұрын
Брат, что за шрифт в превью?
@user-jq5qy2ji1q
@user-jq5qy2ji1q 11 күн бұрын
#Мы хотим продолжение!!
@Colorblind77
@Colorblind77 9 күн бұрын
1:21 скажи мне что это не то аниме, о котором я думаю.
@sonesoul5668
@sonesoul5668 10 күн бұрын
я сначала думал что это канал с несколькими сотнями тысяч сабов. Слишком годно для старта!
@maslenokyo
@maslenokyo 10 күн бұрын
Спасибо!
@akudaama708
@akudaama708 13 күн бұрын
если бы это был бы гайд тебе бы цены не было,а так видео годное
@SubPy_Developers
@SubPy_Developers 11 күн бұрын
У Standalone Coder есть плэйлист с гайдом
@Mortwake
@Mortwake 5 күн бұрын
Экстрим код?
@Кай4ик
@Кай4ик 2 күн бұрын
Интересно будет переписать твой движок на более низко уровневом языке, таком как C, C++ или вообще Rust
@israinddertou5973
@israinddertou5973 Күн бұрын
Пхпххпхп, дел то, пишется за час, только смысл?
@user-my6zq6tm2r
@user-my6zq6tm2r 10 күн бұрын
продолжай
@user-ic8ln8fq8h
@user-ic8ln8fq8h 5 күн бұрын
молодец
@TMOEG-dv8xh
@TMOEG-dv8xh 10 күн бұрын
Мегахарош, приглашаю к нам в комьюнити
@maslenokyo
@maslenokyo 10 күн бұрын
Что за комьюнити?
@JasonMK47
@JasonMK47 10 күн бұрын
Гигачад! Очень интересно находить такие маленькие, но интересные каналы
@nyanya6057
@nyanya6057 8 күн бұрын
Как-то сделал игровой движок на годоте, было прикольно
@user-cc9nm3si8k
@user-cc9nm3si8k 4 күн бұрын
Что? Годод ето уже готовый 3д движок зачем на нем делать движок?
@nyanya6057
@nyanya6057 4 күн бұрын
@@user-cc9nm3si8k в этом и была шутка
@blastybeat8653
@blastybeat8653 9 күн бұрын
Мощный
@docname8333
@docname8333 5 күн бұрын
Так, чтоб не копипастил, скажу что мат анимации делаются в либе manim на пайтон)
@lednikov8512
@lednikov8512 10 күн бұрын
Где ссылочка на гитхаб?)
@user-cz1ft9zd9u
@user-cz1ft9zd9u 13 күн бұрын
Проду!
@dev_tsx
@dev_tsx 9 күн бұрын
Я не геймдев, и не питонист, но зачем-то это посмотрел :) Было интересно, удачи!
@rebit1975
@rebit1975 8 күн бұрын
Интересно, в каких играх вообще анимации от нейронки 🤔
@user-de1wo4xd4j
@user-de1wo4xd4j 9 күн бұрын
Я правильно понимаю что на верху окошка - фпс? А то у тебя он до 45 падает в последних футажах и мне интересно по оптимизации всего этого дела ты уже что-нибудь придумал? )
@alexperemey6046
@alexperemey6046 9 күн бұрын
Это же Питон.
@maslenokyo
@maslenokyo 9 күн бұрын
Да, это фпс, без записи показывает стабильные 60-55, но про оптимизон подумать конечно стоит
@agsvgf2861
@agsvgf2861 8 күн бұрын
Подписался из за айсака на аве
@nothingback
@nothingback 10 күн бұрын
крутое свежее дыхание и взгляд на старый видос вектозавтра, респект
@shkipperShprotiev
@shkipperShprotiev 13 күн бұрын
Ты крутой
@NyanCoder
@NyanCoder 10 күн бұрын
Вдохновился Азозингом?
@yura_figura
@yura_figura 10 күн бұрын
Никогда не думал, как работали игровые движки, благодаря тебе офигел от масштаба знаний разработчиков😱 Как оказалось, это не просто сделать болванку в Unreal на Blueprintе 😏 Видос - бомба 💣
@israinddertou5973
@israinddertou5973 14 күн бұрын
5:25 - что ты несешь, это пистолет из wolf3d!
@faringdiplive2774
@faringdiplive2774 9 күн бұрын
Получилось очень интересно, очень удивился, когда увидил количество подписчиков на канале, мегареспект
@israinddertou5973
@israinddertou5973 14 күн бұрын
Единственный минус - это питон! Нужно кодить на плюсах, или на чем угодно кроме питона)
@rutrin666
@rutrin666 11 күн бұрын
node js круче питона
@theuran
@theuran 11 күн бұрын
​@@rutrin666 английский язык лучше
@galefight
@galefight 11 күн бұрын
Не понял придирку. Человек выбрал питон, и если у тебя есть к нему не приязнь, и ты такой любитель плюсов, то не смотри. Очередной стереотип(хотя я думаю ты сам плюсы не знаешь, хотя не кто их не знает фулл).
@lizbertarian
@lizbertarian 11 күн бұрын
Зачем плюсы, если есть numba?
@rutrin666
@rutrin666 11 күн бұрын
@@galefight бля языку лет 30 а он досихпор медленный
@КакойТоГений
@КакойТоГений 10 күн бұрын
Бро рил назвал Scratch детским движком 💀💀💀💀💀💀
@Miner6
@Miner6 5 күн бұрын
Ты сбертранер
@Maserplayy
@Maserplayy 11 күн бұрын
А почему на питоне пишешь? А не на c++, так же легче и быстрее
@Olavr_UA
@Olavr_UA 11 күн бұрын
опять диванные сеньйоры советы дают)
@sencis9367
@sencis9367 10 күн бұрын
@@Olavr_UA Графика вулкан, cuda, opengl, это на базе c++ делается и трубопровод загрузки вершин и текстур в движке нужно писать на плюсах т.к. это нагрузка на ЦП не малая. Большенство нормальных движков на с++ по этой причине а на питоне даже не знаю есть ли вообще и зачем в ЦП нагруженном приложении ещё и на интерпритируемом ЯП писать движок и дополнительно его нагружать?
@qwertymangames1800
@qwertymangames1800 9 күн бұрын
Сделать игру на быстрых компилируемых языках: C/C++, Rust: нет Сделать игру на очень медленном python: да!
@leon-in-minetest498
@leon-in-minetest498 11 күн бұрын
Сделай простой Юнити воттак. Типа с настройками, редактором уровней и тд.
@user-uz6hj7fc8w
@user-uz6hj7fc8w 4 күн бұрын
Я без движка на джаве под андроид делаю что-то подобное на данный момент. Продолжай делать я подписался.
@juke_crusader
@juke_crusader 11 күн бұрын
Монтаж хороший, но я вобще не понял, зачем это видео. Ты сам сказал, что видосов на эту тему полно
@IESTORAIBLE
@IESTORAIBLE 10 күн бұрын
Сделать нормальный 3д: 😍😍👍👍 Сделать 3д на рейкастинге: ☠💀💀
@Super_sonic228
@Super_sonic228 10 күн бұрын
А что такого? Нормальное 3д с нуля очень сложно.
@AgressiveBanana
@AgressiveBanana 9 күн бұрын
что значит "нормальный 3д"?
@alexperemey6046
@alexperemey6046 9 күн бұрын
@@Super_sonic228 Не сложно. Рядовая задача для программиста. Конечно под конкретную задачу, а не универсальный набор инструментов как в Анриле, но тем не менее.
@yurixofficial8630
@yurixofficial8630 9 күн бұрын
Крутое видео, один минус - python. Многие не понимают этой придирки, поэтому я поясню. Python, даже если отбросить всю мою нетерпимость к нему, для разработки игр совершенно не подходит. Его философия заключается не в скорости выполнения, а скорее в качестве кода. Всë тот же C окажется в этом плане лучше, хоть код на нем будет чуть сложнее. За C++ вообще ничего говорить не буду, те кто хочет боль тот пишет C++, все просто. Придирка эта не про текущий момент, а про переспективу, и ограничения, которые даëт python. И да, python - язык нубов. (Это сказал человек, который знает больше 8 языков программирования, и среди которых python' а нет. )
@prikol9146
@prikol9146 9 күн бұрын
уважаемый комментатор - вы мало того что клинический идиoт, так еще и врун, который приписывает себе несуществующие достижения думая что это как то усилит значимость твоего мнения (иначе объяснить твой высер не представляется возможным) какая разница на чем писать, если ЯП это не более чем инструмент для выражения алгоритма? человек выразил свой алгоритм на том языке который оказался для него максимально удобен, и выбор питона здесь как достаточно простого языка с расширяемой архитектурой очень хороший выбор если ты написал на восьми языках программирования hello world это не значит что ты знаешь язык
@dalexgames549
@dalexgames549 4 күн бұрын
Движок на Питоне? Сомнительная идея...
@leva_zayakin
@leva_zayakin 9 күн бұрын
А слабо с нуля и единицы??
10 Самых Безумных Проектов На Scratch
10:01
СДЕЛАЛ ПОЛНОЦЕННУЮ ИГРУ В 12 ЛЕТ
10:49
разбуди
Рет қаралды 2,6 МЛН
Пробую самое сладкое вещество во Вселенной
00:41
A clash of kindness and indifference #shorts
00:17
Fabiosa Best Lifehacks
Рет қаралды 19 МЛН
Самое Романтичное Видео ❤️
00:16
Глеб Рандалайнен
Рет қаралды 4,7 МЛН
Вечный ДВИГАТЕЛЬ!⚙️ #shorts
00:27
Гараж 54
Рет қаралды 14 МЛН
Создаю ИГРУ МЕЧТЫ на Unity
11:49
Mason
Рет қаралды 73 М.
UE 5.4 Motion Matching First Person Perspective
0:38
BEYOND
Рет қаралды 11 М.
Самые сложные ПЕРВЫЕ УРОВНИ
19:23
БУЛДЖАТь
Рет қаралды 2,8 МЛН
Portal, но Челл не терпила в 16 камере
0:41
Спидран по Майнкрафту. Крупнейший скандал
19:40
Simple maintenance. #leddisplay #ledscreen #ledwall #ledmodule #ledinstallation
0:19
LED Screen Factory-EagerLED
Рет қаралды 26 МЛН
Опять съемные крышки в смартфонах? #cmf
0:50
Как слушать музыку с помощью чека?
0:36
Здесь упор в процессор
18:02
Рома, Просто Рома
Рет қаралды 162 М.
Самый дорогой кабель Apple
0:37
Romancev768
Рет қаралды 313 М.