How to Make a 3D Game in Python from Scratch [ Pygame ]

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 พ.ย. 2024

ความคิดเห็น • 667

  • @TGrod
    @TGrod 4 ปีที่แล้ว +200

    Очень круто, но я немного не допёр по какому принципу ты определил пересечение со стенами)))

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +76

      Все несложно. У нас стена, это квадрат на карте, у которого есть только координаты левого верхнего угла, допустим (100, 100) и размер стороны квадрата 100. И, например, у нашего луча сейчас координаты (113, 159). Так вот, чтобы определить в каком квадрате наш луч, необходимо целочисленно поделить координаты луча и затем умножить их на размер квадрата. ( (113 // 100) * 100, (159 // 100) * 100 ) = (100, 100). То есть, мы попали в квадрат, и проверку на этом завершаем.

    • @TGrod
      @TGrod 4 ปีที่แล้ว +30

      @@StandaloneCoder спасибо! Теперь всё ясно. Я просто упустил тот момент, что мы как бы рисуем луч не сразу целиком, а постепенно, и на каждом шаге проверяем находится ли он в квадрате. Я просто думал, что мы сразу целиком рисуем луч) И ещё раз прошу продолжать делать видео. Не забрасывайте это дело))

    • @geeksamurai9852
      @geeksamurai9852 4 ปีที่แล้ว +3

      @@StandaloneCoder Здравствуйте, спасибо за урок, отлично объясняете, но у меня проблема такая вот,у меня все получилось отлично только вот лучи на экране остаются и когда я двигаюсь они тоже показывают направление, я про лучи которые показывают обзор, когда вы сделали графику от 2д до 3д то у вас они исчезли а у меня нет:(

    • @guitaresstv6777
      @guitaresstv6777 4 ปีที่แล้ว

      @@StandaloneCoder привет, а какую среду программирования ты используешь?

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +4

      @@guitaresstv6777 PyCharm

  • @Jackson-yr9ih
    @Jackson-yr9ih 4 ปีที่แล้ว +22

    Спасибо ОГРОМЕЙНЕШЕЕ за столь изложенный гайд! Не ожидал от себя, что разберусь полностью в такой проекции.
    Функция enumerate() конечно неплохая, но когда о ней ничего не знаешь, ловишь себя на мысли, что непонятно, что вообще она вытворяет в программе. Положа руку на сердце напишу, что следующий алгоритм наверное более понятный и дружелюбный для такой цели, как граббинг всех координат квадратов:
    world_map = []
    y=0
    for line in text_map:
    x=0
    for sign in line:
    if sign == 'w':
    world_map +=[(x*tilesize, y*tilesize)]
    x += 1
    y += 1

  • @thzeroucken
    @thzeroucken 4 ปีที่แล้ว +189

    Ну, теперь у меня есть стимул учить математику с синусами и косинусами. Ты лучший)

    • @ronews4723
      @ronews4723 3 ปีที่แล้ว +2

      а што делать есле нехочет поворачивать я все проверил

    • @Yan_Yagellon
      @Yan_Yagellon 3 ปีที่แล้ว +22

      @@ronews4723 учить русский язык

    • @ronews4723
      @ronews4723 3 ปีที่แล้ว +4

      @@Yan_Yagellon и зач он мне

    • @frostyk097
      @frostyk097 3 ปีที่แล้ว +10

      @@ronews4723 ахвхахх логично))

    • @tahirsalihov4458
      @tahirsalihov4458 3 ปีที่แล้ว

      Тригонометрия называется

  • @emily-jv9xx
    @emily-jv9xx 4 ปีที่แล้ว +65

    Вот спасибо, ну хоть один нормальный человек!!!

    • @ronews4723
      @ronews4723 3 ปีที่แล้ว

      а што делать есле нехочет поворачивать я все проверил

    • @sadboy8538
      @sadboy8538 3 ปีที่แล้ว +1

      @@ronews4723 if keys[pygame.K_LEFT]:
      self.angle -= 0.02
      if keys[pygame.K_RIGHT]:
      self.angle += 0.02

    • @shangtsung9935
      @shangtsung9935 2 ปีที่แล้ว

      @@sadboy8538 я хоть и не вовремя, но у меня такая проблема возникла, лучи, что должны сталкиваться со стенами и поворачивать вместе с игроком не поворачивается, сам игрок поворот делает спокойно, а лучи нет. Я, может быть, что-то пропустил, но я несколько раз перепроверил код, не могу найти причину.

    • @sadboy8538
      @sadboy8538 2 ปีที่แล้ว

      @@shangtsung9935 даже не знаю что нужно сделать :(

    • @shangtsung9935
      @shangtsung9935 2 ปีที่แล้ว

      @@sadboy8538 печально, но все равно спасибо.

  • @aparrot4254
    @aparrot4254 3 ปีที่แล้ว +14

    You know this is good content when you don't understand Russian but still get entertained. Keep up the good work!

  • @vrabosh
    @vrabosh 4 ปีที่แล้ว +145

    афигеть, в 15мин пояснить как делать 3д лабирин с ходьбой, это круто.

    • @flane2188
      @flane2188 3 ปีที่แล้ว +9

      Ага, был бы другой автор, растянул бы видео на час

    • @ronews4723
      @ronews4723 3 ปีที่แล้ว

      а што делать есле нехочет поворачивать я все проверил

    • @ohnocoder
      @ohnocoder 3 ปีที่แล้ว

      @@ronews4723 Решил?

    • @kozlik992
      @kozlik992 2 ปีที่แล้ว

      16 минут 14 секунд)

    • @HibikiKanta1
      @HibikiKanta1 2 ปีที่แล้ว

      @@ronews4723 решил?

  • @freezeyt2519
    @freezeyt2519 13 วันที่ผ่านมา

    Очень информативное видео, даже не думал, что случайно наткнусь на такой шедевр. За 1 присест посмотрел все части и прям очень понравилось. Однозначно лайк💪

  • @Несмешнонесмеемся
    @Несмешнонесмеемся 3 ปีที่แล้ว +7

    огромное спасибо за ваш труд! единственная серия роликов в которой подробно и понято рассказано про ray casting, по вашим видео сделал шутер на C++ и библиотеке sfml

  • @МихаилИсаков-о5б
    @МихаилИсаков-о5б 4 ปีที่แล้ว +15

    Ля, видео новое, всё понятно объясняется, как же я рад что нашёл это видео

  • @snowdaledwarf3929
    @snowdaledwarf3929 ปีที่แล้ว +3

    Спасибо огромное! Лучшее объяснение алгоритма рэйкастинга из тех, что мне удалось найти, в том числе и на английском языке!

  • @laifodes2805
    @laifodes2805 4 ปีที่แล้ว +6

    лучшее видео что я видел по играм, столько новой и полезной информации, а главное - кратко и понятно.

    • @brawaga
      @brawaga 3 ปีที่แล้ว

      Не везло вам, видать, с рекоммендациями от ютуба.

  • @mr.den4ik968
    @mr.den4ik968 3 ปีที่แล้ว +5

    Офигеть вы крутой программист-математик! Вот зря я науки не учил... Вообще крутой специалист! Удачи и хорошего вам будущего и побольше такие видео выкладывайте!!! Вам бы профессором в университете быть + науки преподавать разные, помимо программирования!

  • @iprepperGames
    @iprepperGames 2 ปีที่แล้ว +1

    Несколько раз пересматривал видосик, очень помогло написать свою игру. Эта озвучка такая клёвая, жаль новые видео не с ней. Спасибо за контент.

  • @КостяЕжов-я3б
    @КостяЕжов-я3б ปีที่แล้ว

    Я никогда раньше не думал, что математика может когда-то пригодиться в таком масштабе. Я просто охренел от твоих знаний. Лайк и подписка однозначно!

  • @chessprogramming591
    @chessprogramming591 3 ปีที่แล้ว +10

    Enjoyed reading through the code!
    Very didactic!
    Thanks man!

  • @АлександрЛынник-з4ь
    @АлександрЛынник-з4ь 2 ปีที่แล้ว +12

    Вы лучший! было бы не плохо, если вы посвятите несколько видео уроков, нейронным сетям, с нуля естественно)

  • @mynameisArseny
    @mynameisArseny 2 ปีที่แล้ว +1

    Ваууууууууууууууууу, никогда не думал что 3d игру создавать очень просто, а то создавал раньше только 2d, думал другое сложно

  • @LifelessAl
    @LifelessAl 3 ปีที่แล้ว +1

    Это же Hovertank 3D! Просто история жанра FPS перед глазами) Просто нереальное спасибо!

  • @lewdagone3153
    @lewdagone3153 4 ปีที่แล้ว +1

    Надеюсь выйдет 2ая часть урока!👍👍

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +1

      Да, стал работать над второй частью

  • @se3122
    @se3122 4 ปีที่แล้ว +12

    Бля чел, ты лучший
    Реально развивающая тема а не питон за час у Хауди хо

    • @JustRixed
      @JustRixed 2 ปีที่แล้ว

      Типичный Хауди Хо: Ого! Ты умеешь писать команду print()! Теперь напиши 4Д игру с шейдерами и HD персонажами на Python только с модулем pygame!

  • @LiVViN-t7z
    @LiVViN-t7z ปีที่แล้ว

    Бро ты легенда только благодаря тебе смог понять принцип работы "простых" Игр и делать их зная базу питона

  • @uralfgdhjvc-324
    @uralfgdhjvc-324 3 ปีที่แล้ว +1

    Я также смотрел ваш урок по деланью змейки. Тоже классно!

  • @евгенартемьев-н8у
    @евгенартемьев-н8у ปีที่แล้ว

    Дядя ты гений. Так все быстро сделал. Браво.

  • @user-wx7ji9jv3j
    @user-wx7ji9jv3j 4 ปีที่แล้ว +4

    Лучший .Очень и очень интересно, а главное круто.

  • @faseplay.
    @faseplay. 4 ปีที่แล้ว +5

    Делаю 3д игру на JavaScript + CanvasAPI по вашим урокам)
    Очень интересно, я понял как всё работает, уже до конца. Спасибо

  • @anikub2738
    @anikub2738 2 ปีที่แล้ว +1

    Я только начал смотреть но уже очень круто, возможно такими темпами на день рождения брата сделаю ему рейкастинг одной игры которую он любит ещё с ps1

  • @erizy4523
    @erizy4523 9 หลายเดือนก่อน

    Большое спасибо за видео. Честно ,удивился , когда узнал что можно делать 3д игры в Python с помощью математики
    Подписка и лайк с меня

  • @СергейКоновалов-ф4ы
    @СергейКоновалов-ф4ы ปีที่แล้ว

    Добрый день и спасибо большое за видео, недавно начал изучать питон и сделал 1 игру в виде галаги. На основе данных уроков сделаю 2 проект. Большое спасибо за ваш труд.

  • @elio27
    @elio27 3 ปีที่แล้ว +3

    Don't understand a word of russian but it's really cool !

  • @DenisTrebushnikov
    @DenisTrebushnikov 3 ปีที่แล้ว

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

  • @okoloboga-37
    @okoloboga-37 ปีที่แล้ว

    Я вот бедолага-аналитик, изучал python для построения нейронных сетей и анализов, но всегда хотелось игры делать. Но не их готовых конструкторов, как юнити и анреал, а что бы самому понимать и прописывать физику и законы мироздания. Везде читаю - нужен только Си. питон - тормоз, игры на нем не лепят. И чо. мне язык что ли переучивать? Причем в ущерб математическим возможностям питона. нееее, я начал верить, что найдется спаситель - и покажет мне всю мощь математики и лучшего для нее языка программирования. ЧУВАК СПАСИБО, ТЫ ТОТ САМЫЙ СПАСИТЕЛЬ!!

  • @gargyorpiest6047
    @gargyorpiest6047 4 ปีที่แล้ว +2

    Почему я никогда не знал об этом канале! Вау!

  • @Lifad7
    @Lifad7 2 ปีที่แล้ว +4

    По поводу момента поворота линии в 5:35
    Перемещение точки осуществляется путём нажатия W, A. S, D. И у многих затем появляются вопросы на подобии: "У меня линия постоянно смотрит вправо".
    Изменение поворота линии осуществляется путём нажатия кнопок со стрелочками .

    • @SteelNoodles29
      @SteelNoodles29 ปีที่แล้ว +1

      У меня линия постоянно смотрит вправо, при этом не реагирует на стрелочки или еще что то что могло их напоминать. что делать?

    • @fastwalker3551
      @fastwalker3551 ปีที่แล้ว +1

      @@SteelNoodles29 тоже самое, я хз что делать

    • @maxdimosca1106
      @maxdimosca1106 ปีที่แล้ว

      Что делать если вообще не двигается? В 3D не работает, а в 2D спокойно?

    • @Coldaser
      @Coldaser 6 หลายเดือนก่อน

      Что делать если линия не ходит за игроком

  • @madnomad6528
    @madnomad6528 2 ปีที่แล้ว +1

    Спасибо автору и конечно Джону Кармаку! Автор где ты этому научился ???? скажи ??? ресурс про математику??

  • @ThA891
    @ThA891 4 ปีที่แล้ว +9

    Пиздец! Да я бы в жизни сам не разобрался! И Тут даж бутылка бы не помогла... Теперь все понятно! Спасибо тебе огромное! Буду разбираться более конкретно что до как по твоему коду, а то с первого раза не все в голове уложилось. ))) Как сделаю игру обязательно скину тебе ;)
    P.S. Первый!))

    • @кточтотин
      @кточтотин 4 ปีที่แล้ว +2

      Не первый) он первее о моей узнал

  • @mhdmodocluber9591
    @mhdmodocluber9591 4 ปีที่แล้ว +5

    Ура, спасибо! Ты услышал меня

  • @wizard3374
    @wizard3374 4 ปีที่แล้ว +2

    Топ, хоть и голосом робота но это ничуть не мешат

    • @LainnMapperYou
      @LainnMapperYou 4 ปีที่แล้ว

      У него микрафона нету

    • @Vitaliy-ct2wv
      @Vitaliy-ct2wv 4 ปีที่แล้ว

      голосом робота даже круче

  • @СвятославХренов
    @СвятославХренов 2 ปีที่แล้ว

    David Beats + программирование
    Чел ты гений

  • @blackfox4035
    @blackfox4035 4 ปีที่แล้ว +3

    Спасибо большое, ты заслуживаешь больше подписчиков!

  • @aresont9372
    @aresont9372 4 ปีที่แล้ว +3

    Поздравляю с сотней подписчиков!

  • @cheeseman_93
    @cheeseman_93 ปีที่แล้ว

    Интересно и прикольно, конечно много вещей тут мне пока не понятны но многое от сюда тоже можно взять

  • @valdankartoshkin9010
    @valdankartoshkin9010 3 ปีที่แล้ว

    Пора делать свой Wolfenstein 3d

  • @denizdemir9255
    @denizdemir9255 3 ปีที่แล้ว

    hi, i just want to say that I REALLY appreciate the english subtitles!

  • @scaffus
    @scaffus 3 ปีที่แล้ว

    I don't understand any word but this man is a genius

  • @ASW_StormOfficial
    @ASW_StormOfficial ปีที่แล้ว

    Мужик кайф.
    но делай просто угол направления = direction
    а вперед вбок и назад - это direction+90 direction-90 direction -180
    имея угол - расчитай вектор горизонтальной скорости и вертикальной скорости -
    x += cos(direction)
    y += sin(direction)
    вроде так.
    и так ты и пулю кастовать можешь. не только шаг..
    или ты об этом и сказал я хз)
    * что я имею ввиду -ОДНА формула для всех движений игрока :)
    зависящая от view_direction

  • @alekseyzaretskiy5757
    @alekseyzaretskiy5757 4 ปีที่แล้ว +6

    И наложение текстур интересно, и оптимизационная часть, сам бы 100 лайков поставил, если бы мог) Оптимизация, часом, не использованием формул нахождения персечения двух отрезков?

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +3

      нет, я предложу использование своей версии DDA алгоритма

    • @alekseyzaretskiy5757
      @alekseyzaretskiy5757 4 ปีที่แล้ว +1

      @@StandaloneCoder Интересно

  • @Byt3pixe1
    @Byt3pixe1 4 ปีที่แล้ว +3

    годная инцтрукция. спасибо
    сегодня буду пробовать

  • @БобСмит-ш5м
    @БобСмит-ш5м 4 ปีที่แล้ว +2

    Ты лучший челлл, продолжай дальше

  • @АнтонПивненко-б4б
    @АнтонПивненко-б4б 4 ปีที่แล้ว +7

    Спасибо! Луди думают что 3д это блендер, 3д макс и т.д. Нет! Это просто работа нашего МОЗГА... Очень наглядно и по русски. Спасибо!

  • @kotenokNew-xyz
    @kotenokNew-xyz 21 วันที่ผ่านมา

    Крутой гайд. Спасибо!

  • @АртурПирожков-э4ы
    @АртурПирожков-э4ы 4 ปีที่แล้ว +2

    лайк и подписка! Продолжай, дружище.

  • @bjj1423
    @bjj1423 2 ปีที่แล้ว

    Учу питон неделю)) но походу зайду сюда позже))))

  • @ASW_StormOfficial
    @ASW_StormOfficial ปีที่แล้ว

    не ну я подофигел кончено я не думал что в питоне хпхпхахаха это возможно)))
    респект.
    рендеринг конечно я понимаю что это основы основ но СУПЕРСКИ сделан ои подано

    • @bebrozavr228
      @bebrozavr228 ปีที่แล้ว

      запомни, в любом языке программирования возможно всё, кроме того, что нарушает законы физики

  • @iliiakozhan5163
    @iliiakozhan5163 4 ปีที่แล้ว +2

    Оч круто!!! Расскажи про натягивание текстур на такие стены

  • @veng1500
    @veng1500 2 ปีที่แล้ว

    Храни тебя господь

  • @МаксимЖелтов-ф8г
    @МаксимЖелтов-ф8г 4 ปีที่แล้ว +2

    Ты молодец продолжай
    Будь здоров

  • @thefikus1275
    @thefikus1275 3 ปีที่แล้ว

    Многие моменты не понял. Но узнал много полезного.

  • @aresont9372
    @aresont9372 4 ปีที่แล้ว +38

    Кто лайк зажал? Раскошеливайтесь жмоты!

    • @ronews4723
      @ronews4723 3 ปีที่แล้ว +1

      а што делать есле нехочет поворачивать я все проверил

    • @doctor7628
      @doctor7628 3 ปีที่แล้ว +1

      да ты просто рукожоп, у меня лично все работает

    • @ArtamonHelloPython
      @ArtamonHelloPython 3 ปีที่แล้ว

      @@ronews4723 да

    • @lovie_minor
      @lovie_minor 3 ปีที่แล้ว

      @@doctor7628 токсик

  • @ЕгорЗверев-й8к
    @ЕгорЗверев-й8к 4 ปีที่แล้ว +1

    Это магия какая-то!)

  • @yanwhite5407
    @yanwhite5407 4 ปีที่แล้ว +2

    Ты очень крутой, спасибо тебе.

  • @lalathealter6513
    @lalathealter6513 3 ปีที่แล้ว

    за такое грех лайк не поставить

  • @Pixel_Magic
    @Pixel_Magic 3 ปีที่แล้ว

    Все: Нужна математика, говорили они!
    Я: Не нужна математика, говорили они!

  • @frostyk097
    @frostyk097 3 ปีที่แล้ว

    Завтра попробую есле время будет, а так все прикольно

  • @vladelcapitan
    @vladelcapitan 2 ปีที่แล้ว +1

    Привет. Спасибо за видео, очень подробно. Один момент, я немного переработал принцип формирования карты и часть настроек перенес в json файл, после чего справа появилась черная полоса. От чего так могло произойти?

  • @ghj_bmx
    @ghj_bmx 4 ปีที่แล้ว

    Спасибо папаша за это видео 3 питона хорошого обяснения

  • @tvitit1228
    @tvitit1228 3 ปีที่แล้ว

    это очень хороший урок!!! лайк, подписка, колокольчик этому человеку :-)

  • @techos3253
    @techos3253 4 ปีที่แล้ว +3

    Все спасибо пошел делать guns of bullshit

  • @JumpingRope45
    @JumpingRope45 2 ปีที่แล้ว

    Отличные ролики. Вопрос, как такой голос повествователя генерируется? )

  • @VAVANSTR
    @VAVANSTR 3 ปีที่แล้ว

    В следующий раз если делаете серию видосов, размещайте плиз на главной картинке номер серии (части), а то когда репостишь ваши видосы например в вк, то там приходится помучиться, чтобы понять где какая час обучающего ролика.

  • @davidgameboy8736
    @davidgameboy8736 2 ปีที่แล้ว

    Не уходи пж НЕЕЕЕЕЕЕЕЕЕЕТ!

  • @Muzaffarkhon
    @Muzaffarkhon 2 ปีที่แล้ว

    Спасибо тебе большое. Помог при вызове других файлов.

  • @Maine__Coon__1
    @Maine__Coon__1 2 ปีที่แล้ว +1

    Я 0 в питоне, но уже хочу игру такую, хоть повторить...

  • @moviken_5213
    @moviken_5213 4 ปีที่แล้ว

    lol, лишнюю скобку дописал и полчаса мучался с типами данных, урок отличный

  • @Goosese
    @Goosese 3 ปีที่แล้ว +1

    Контент годный но новичкам это понять и за помнить очень сложно

  • @denishaleckiy8303
    @denishaleckiy8303 2 ปีที่แล้ว

    Если бы такую математику преподавали в вузе, я бы ее учил

  • @uralfgdhjvc-324
    @uralfgdhjvc-324 3 ปีที่แล้ว +1

    Спасибо! Очень классное видио!

  • @daniilponomarenko311
    @daniilponomarenko311 3 ปีที่แล้ว +1

    Очень круто спасибо большое)))

  • @bvg129
    @bvg129 4 ปีที่แล้ว +2

    В Pycahrm есть шаблон prop, который автоматически вставляет свойство. И геттеры, и сеттеры, и делетеры тоже. На 4:14 пригодился бы

  • @РобинзонКрузо-ч4к
    @РобинзонКрузо-ч4к 4 ปีที่แล้ว +2

    Ура ты сделал урок! Интересно будет узнать про текстурирование))) И у меня есть проблема. Что бы повернуть игрока мне каждый раз приходится тыкать на кнопку. Как сделать, что бы поворачивался если зажать, а не каждый раз тыкать?

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +2

      Возьми принцип управления из этого видео и тыкать больше не придется

  • @truenickname2015
    @truenickname2015 4 ปีที่แล้ว

    Хорош чувак, пришлось правда на 0,75 смотреть, ибо кодишь быстро, я не успевал. А так, мути еще уроки (:
    P.S. Я бы посоветовал начать с саааамого начала с установки python, где качать и как, совсем для нубов (для меня)
    Ы

    • @Vitaliy-ct2wv
      @Vitaliy-ct2wv 4 ปีที่แล้ว

      с самого начала поройся на ютубе и в гугле, контента хватает, зачем человеку время тратить на совсем уж простые вещи!?

    • @truenickname2015
      @truenickname2015 4 ปีที่แล้ว

      @@Vitaliy-ct2wv ты не представляешь на сколько люди могут быть тупыми..

    • @tablenkov4993
      @tablenkov4993 3 ปีที่แล้ว

      @@truenickname2015 если хочешь сделать игру с нуля - ИЗУЧИ ЯЗЫК
      хотя-бы не полностью, но ИЗУЧИ

  • @justpret981
    @justpret981 2 ปีที่แล้ว

    Отличный туториал, сам по нему делал игру, но я тут понял, что рейкастинг немного тупая технология, я хочу сказать что мы знает координаты игрока и его угол поворота и мы знаем всю карту, более того, карта состоит из квадратов, значит мы можем провести вектор от точки игрока до вершины и получить сразу ее координаты, так делать для каждого элемента карты, что в поле зрения и что виден. Затем получив лишь нижнюю точку вершины уже на экране можно получить верхнюю просто отразив её относительно горизонта, затем получить второе ребро точно также, затем залить это полигоном.

    • @justpret981
      @justpret981 ปีที่แล้ว

      Я реализовал это, но ещё карта - это набор вершин.
      Это было чуточку труднее рейкастинга, но оно того стоит!
      Суть такова:
      Перемещаем систему координат к камере,
      поворачиваем систему координат на угол поворота камеры.
      находим проекции векторов от вершин к камере с экраном.
      На основе расстояния вычитываем размер.
      там где была проекция - строим отрезок заданного размера.
      добавляем вершины в стек и рисуем полигон.
      Вуаля! У меня на карте с +-300 вершинами 400 фпс.
      Это получается какой-то полигональный рейкастинг, но без рейкастинга.

  • @OleksRudyk
    @OleksRudyk 3 ปีที่แล้ว +1

    Спасибо за урок только хотел спросить почему вы область видимости FOV задаете [math.pi / 3] ?

    • @YuraSamusenko
      @YuraSamusenko 3 ปีที่แล้ว

      Это угол в радианах. π радианов - 180 градусов. Соответственно, π / 3 - 60 градусов поля зрения

  • @nandreyk
    @nandreyk 4 ปีที่แล้ว +2

    на моменте отрисовки лучей начинает сильно лагать, не могу понять с чем это связано, ноутбук далеко не кирпич. А уроки в целом отличные, узнал очень много нового
    p. s. посмотрел следующий ролик про оптимизацию и все понял, спасибо)

    • @isn81
      @isn81 2 ปีที่แล้ว

      @SEMKI TV у меня сильно лагает, как решить?

  • @INR-z6e
    @INR-z6e หลายเดือนก่อน

    по моему бро слишком крут

  • @crackus4907
    @crackus4907 3 ปีที่แล้ว +2

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

  • @pol3ik525
    @pol3ik525 3 ปีที่แล้ว

    Спасибо огромное помог выручил лайк!!!!

  • @faseplay.
    @faseplay. 4 ปีที่แล้ว +1

    11:00
    Можно было инициализировать х и у за пределами цикла, который шёл в глубину, и рисовать линии также за его пределами: так в разы быстрее работает програма

  • @Uroboros303
    @Uroboros303 3 ปีที่แล้ว

    Спасибо за урок! Как раз 3д игру делаю )

  • @yofox
    @yofox ปีที่แล้ว +1

    Привет бро ты куда пропал

  • @JsixjsnHhGsbbe
    @JsixjsnHhGsbbe 3 ปีที่แล้ว

    Просто топ, я всё понял сразу же)))

  • @антонвасиленко-п6ж
    @антонвасиленко-п6ж 4 ปีที่แล้ว +1

    Ты молодец продолжай. молодец

  • @harden2018
    @harden2018 ปีที่แล้ว

    я делал всё как ты делал, перевел в 3D а игрок не ходит вообще... только может влево и вправо поворачиваться, помоги

  • @hawkise
    @hawkise 4 ปีที่แล้ว +1

    Классный получился проект, лайк! Только скажи пожалуйста, в каком редакторе ты делаешь код? Через cmd не получается открыть окно, а через IDLE не хочу. Буду премного благодарен))

    • @StandaloneCoder
      @StandaloneCoder  4 ปีที่แล้ว +1

      Это PyCharm

    • @yuliyaparamonova5596
      @yuliyaparamonova5596 2 ปีที่แล้ว

      @@coderlweer7060 Если хочешь могу научить всем фишкам

    • @iiikrokusiii6974
      @iiikrokusiii6974 ปีที่แล้ว

      @@yuliyaparamonova5596 здравствуйте, у меня есть к вам пара вопросов про PyCharm

  • @difoldery
    @difoldery 3 ปีที่แล้ว

    Наконец я понял тригонометрию

  • @Hanovski14
    @Hanovski14 2 ปีที่แล้ว +1

    Автор : все мы прекрасно знаем * какая-то формула из тригонометрии*
    Я тот который не понимает триганометрию : :/

  • @blackgame2656
    @blackgame2656 3 ปีที่แล้ว +2

    У меня луч зелёный не так вертится, подскажи что делать. Вроде код чисто такой же как и у тебя

  • @strimerpocketants9359
    @strimerpocketants9359 2 ปีที่แล้ว

    Это наверное учитель математик решил сделать мативацию учить его урок)))

  • @artempaskevichyan1275
    @artempaskevichyan1275 4 ปีที่แล้ว

    Спасибо огромное, сильно помог, очень интересно

  • @VitaliyZhdanov
    @VitaliyZhdanov ปีที่แล้ว

    Бля, этот голос просто топчик😂😂

  • @tahirsalihov4458
    @tahirsalihov4458 3 ปีที่แล้ว

    с одной стороны я видел как другой чувак делал это С++, но у него было нихрена не понятно, а ты объяснил это сначала показав на 2Д потом только перейдя на 3Д . Спасибо огромное просто лучший