Простой проект 3D-графики?

Я ищу несколько хороших идей для простой программы для работы с трехмерной графикой в ​​качестве последнего проекта для введения в класс компьютерной графики. Что касается некоторой справочной информации, мы будем использовать opengl, и у нас будет чуть больше месяца, чтобы поработать над этим, так что ничего слишком надуманного. Чем проще и «красивее» будет выглядеть, тем лучше. Однако для этого требуется какой-то интерфейс, с которым пользователь может взаимодействовать (поэтому очень простая игра или что-то подобное - хорошая идея), и он должен быть трехмерным.

Пока что моя единственная идея - это, возможно, 3D-версия Тетриса (некоторые примеры можно найти в Google).

Обновлено: в итоге я выбрал 3D Tetris. Менее чем за месяц вы можете увидеть, что я придумал здесь.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
16
0
9 476
16
Перейти к ответу Данный вопрос помечен как решенный

Ответы 16

Я бы проверил Panda3D или Pygame.

Panda3D, вероятно, близок к тому, что вы ищете, и одна из идей, которая всегда работает, - это поместить лицо пользователя в главного героя или объект. 3д-понг с лицом игрока? Используйте что-нибудь неожиданное ... например, тетрис из гамбургеров вместо кирпичей.

3D-игра тральщик, похожая на Вот этот.

Добавление немного физики делает его более интересным. Как насчет реализации Лабиринта (игрушечный лабиринт, в котором вы должны направлять мяч от начальной точки к цели, наклоняя его).

Labyrinth

Обновлено: Эрик сказал мне, что это называется Лабиринт.

Эта игра называется «Лабиринт» - хорошая идея. знак равно

Erik Forbes 11.10.2008 03:38

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

Kibbee 11.10.2008 05:35

Да, отладка физики может отнимать много времени.

Jasper Bekkers 27.10.2008 23:07

Для Android есть отличная версия.

Internet man 11.10.2009 19:17

Посмотрите http://www.contextfreeart.org/ ... напишите что-нибудь подобное, но для 3д.

Мне нравятся маленькие самоорганизующиеся приложения жизнь, такие как Boids. Их может быть интересно кодировать, и они всегда выигрывают от приятного пользовательского интерфейса, особенно трехмерного. Пользовательский ввод может изменять аспекты окружающей среды, а также перемещаться по ней.

Ответ принят как подходящий

Редактор 3D-текста / кода. Текст трехмерный, ошибки выделяются, отступы кода не только отступают, но и выступают по оси z, страницы / файлы трехмерны и могут переворачиваться как блокнот.

Наверное, бесполезно, но весело и интереснее, чем игра IMO.

Alt text

ой. The concept of vim3d makes my brain hurt!
Draemon 11.10.2008 03:49

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

Jobi Joy 11.10.2008 12:23

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

mdec 11.10.2008 12:26

Нет, я просто создал это в иллюстраторе, чтобы дать представление о том, о чем я говорю. Как я уже сказал, не очень полезно (в настоящее время), но было бы довольно круто!

mattlant 11.10.2008 12:27

Я согласен. Я не уверен, будет ли это практично, но я обязательно хотел бы попробовать.

GEOCHET 11.10.2008 17:26

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

mattlant 11.10.2008 20:58

Я почти хочу попробовать это сам! +1

NM. 21.10.2008 19:31

@mattlant, ссылка на ваше изображение не работает

brainjam 26.07.2011 04:08

Привет, Мэттлант, просто хотел сообщить, что ссылка на изображение не работает!

wrongusername 11.12.2011 05:43

Однажды я попробовал сделать 3D Asteroids для класса. Я так и не завершил геймплейную часть, так как это был урок графики. Корабль мог перемещаться, как и астероиды, но не было обнаружено столкновений. К кораблю и астероидам были применены трехмерные текстуры, а астероиды были построены из эллипсоидов, так что на самом деле они были трехмерными. Однако игровой процесс был полностью 2D.

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

Это было предложено здесь - stackoverflow.com/questions/193339/…

Erik Forbes 11.10.2008 03:55

Мне нравятся экзопланеты. Иди читай их. В Википедии и http://exoplanet.eu много информации. Астрономы и общественные деятели всегда могут использовать свежие 3D-анимации, показывающие, как работает Эффект Допплера или как планета, проходящая перед звездой, делает ее, например, на 0,5% тусклее.

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

Я бы сам делал такие 3D-анимации, если бы не занимался вычислением чисел для реальной науки. Я буду ревновать!

как kepler.nasa.gov/media/KEPLER.SWF, но сделано лучше

DarenW 13.10.2008 06:12

В университете для моего курса параллельного программирования я сделал реализацию Игра жизни Конвея в openGL / MPI. Это было довольно интересно. Хотелось бы, чтобы у меня еще где-то был код. Преимущество использования открытого GL заключается в том, что вы можете расположить сетку в разных ориентациях, а не плоскую сетку. Помните, что код не существует, пока он не зарегистрирован в системе контроля версий.

+1 за «код не существует, пока он не зарегистрирован в системе контроля версий».

Frank V 14.05.2009 20:03

Кубик Рубика.

Если вы ищете настоящую университетскую задачу, я должен был создать небольшую вертолетную «игру», в которой вы могли бы взлетать с авианосца в океане и летать с некоторыми эффектами окружающей среды, движущейся водой и т. д., Т.е. ничего слишком сложного. . В качестве другого примера, задачей, поставленной в предыдущем году, была небольшая гоночная игра без соперника. Я бы побеспокоился, что вы можете потерять отметки с тетрисом, поскольку это звучит так, как будто мало что будет сделано по оси z и может оказаться слишком двумерным, хотя это, очевидно, зависит от вашего брифинга.
В любом случае, это даст вам возможность поэкспериментировать с основными функциями OpenGL, такими как туман, освещение, геометрия, текстуры и некоторая базовая физика движения и обнаружение столкновений / реакция.

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

Если вы когда-нибудь играли в Ракетное командование, я полагаю, что это может быть хороший проект для «3d-ify».

Попробуйте курицу, переходящую дорогу.

Вам, вероятно, потребуется продемонстрировать минимум голый:

  • текстуры
  • осветительные приборы
  • анимация
  • взаимодействие
  • обнаружение столкновений

Не включайте даже простую физику, если за нее нет оценок. Расставьте приоритеты задач на основе схемы выставления оценок. Сначала найдите что-нибудь простое и сделайте резервную копию :)

Перепишите Блоки 3D. Графика в этом проекте сейчас выглядит ужасно. Я помню, как играл в эту игру (или в одну похожую) на 386 с каркасной графикой ... потрясающе. Игра в основном представляет собой 3D-тетрис.

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

  • Загрузите и отобразите карту высот или дерево BSP в качестве уровня.
  • Загрузите и отрендерите несколько простых моделей MD2 (анимация по ключевым кадрам, небольшое количество полигонов и простой формат).
  • Нарисуйте простой hud.
  • Пересечение лучей / AABB, каждый раз, когда пользователь щелкает мышью, вам нужно будет направить луч из центра экрана и посмотреть, пересекает ли он ограничивающие прямоугольники врагов.
  • Простая система камер FPS.

Насколько я понимаю, это вполне выполнимо за месяц. (Вероятно, это можно сделать за неделю, если вы уже кое-что знаете).

Другие вопросы по теме