|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
Создание игры(2d)12.05.2009, 21:08. Показов 100159. Ответов 423
Метки нет (Все метки)
Собственно идея такого создать нечто на подобиe ->
http://www.newgrounds.com/portal/view/494301 Буду сюда задвать свои вопросы,думаю всем кто будет увлечён создание игры тоже будет интресно) Otaka,этот задний буфер замещает собой background плюс курсор оставляет на неём свои артефакты,как его очищать,да так чтоб ещё и background у нас был. ________________________________________ ________________________________________ _________________________ Основные моменты Вычисление угла поворота персонажа в зависимости от положения курсора мыши То же Поворот изображения(тут еще как смещать точку поворота) Делаем пули Все еще непонятки с пулями Начинаем вычисление коллизий Идея про то, как это должно быть Как это должно быть реализовано Как повернуть массив точек(регион)? А тут код(в нем есть глюк. Потом есть исправленная версия) Находим столкновение региона и линии. Исправленная версия столкновения регионов Как это должно выглядеть в принципе? Начинается долгое обсуждение того как делать редактор уровней ... ... Первый вариант редактора Снова эти пули Функция которая бьет изображения на мелкие куски(тайлы) Версия редактора Загрузка сохранение Еще версия
4
|
|
| 12.05.2009, 21:08 | |
|
Ответы с готовыми решениями:
423
Создание игры Создание игры Создание игры |
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 17.06.2009, 21:42 | |
|
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 17.06.2009, 21:44 | |
|
А сли у тебя стена под углом, то ты её задай как линию, а потом проверяй столкновение прямоугольника с линией. Я ж написал в простейшем случае, для квадратных предметов.
0
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 17.06.2009, 21:56 [ТС] | |
|
Можешь подробно описать что делает эта функция IntersectRect(&intRect,&tp,&Prep[i]) И вот это &intRect,&tp,&Prep[i] что такое)
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 18.06.2009, 10:16 | |
|
IntersectRect(&intRect,&tp,&Prep[i])
Эта функция ищет пересечение двух прямоугольников(если оно есть). IntRect-первый параметр означает куда после выполнения функции поместится результат пересечения двух прямоугольников. tp и Prep - это я указал эти самые два тестируемые прямоугольника. Заметь, что в функцию всегда передаются указатели на них. Не по теме: Прежде чем задавать такие вопросы лучше глянь в справку WinApi в Билдере или в МСДН, там очень много всякого интересного.
0
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 18.06.2009, 10:54 [ТС] | |
|
А как насчёт пересечения двух геометрических фигур,для них есть функция?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 18.06.2009, 15:59 | |
|
А это тебе надо искать различные варианты:
-Пересечение окружности с окружностью. -Окружность и линия. ... итд. Можно использовать стандартные функции Виндовса - CombineRgn. Регион-замкнутая фигура из точек. Если применить CombineRgn на две пересекающиеся фигуры, то в результате вернется результат пересечения и значение COMPLEXREGION. А если эти фигуры не пересекаются, то вернется значение NULLREGION. Но я так тебе скажу, что это не очень удобные функции. Легче всего взять за основу пересечение двух линий, и можно все препятствия описать как набор ограничивающих линий.
0
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 18.06.2009, 16:50 [ТС] | |
|
А функцию пересечения линий(Polyline(points,n)) можешь написать,просто я покапался в хелпе не нашёл ничего дельного.
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 18.06.2009, 16:56 | |
|
Из points(n) можно создать регион, а потом CombineRgn.
А можно Последовательно проверить пересечения всех линий. Но это не всегда будет срабатывать, например, если объект будет внутри другого объекта, то функция скажет, что пересечения нет.
1
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 20.06.2009, 22:41 [ТС] | |
|
Слушай,а у регионов количество точек обязательно должно быть одинаково?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 20.06.2009, 22:45 | |
|
Нет конечно, сколько угодно.
0
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 20.06.2009, 22:46 [ТС] | |
|
Я тут посмотрел тему внизу про зглаживание,но нирена не понял XD,это реально к моему проэкту применить)
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 20.06.2009, 22:54 | |
|
Неа, оно конечно ничего, но слишком медленно(одна небольшая картинка обрабатывается в течении порядка 100 мс), а как ускорить я не знаю.
0
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 21.06.2009, 13:58 [ТС] | |
|
А TPoints реально повворачивать в стать объекту,просто что делать в такой ситуации?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 21.06.2009, 14:52 | |
|
Полярные координаты тебе помогут. Немного несложных матпреобразований, и все будет впорядке.
Если сам не разберешся, то вечерком сегодня думаю набросаю функцию поворота TPoint[] относительно какой-то точки.
1
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 21.06.2009, 19:12 | |
|
Смотри что вышло.
Только есть все же пару проблем: Ты писал про TPoint, но их использовать нельзя по той причине, что там целые числа, и при повороте туда сюда ты будешь терять дробную часть, и фигура будет деформироваться, и после нескольких поворотов ты получишь какую-то бесформенную кучу. Надо использовать FPoint(это типа дробный TPoint). В класс CRegion встроена обработка коллизий, но скажу тебе то, что она не всегда точно определяет столкновения, короче попробушь и узнаешь. Вот и все.
2
|
|
|
38 / 24 / 4
Регистрация: 21.02.2009
Сообщений: 249
|
|
| 23.06.2009, 02:45 | |
|
ребят респект за проект=)Замутили=)Я если честно на билдере бы не рискнул игру писать=)Есть куда более удобные для этого языки)А так видел как стратегии пишут на visual c++.там ваша затея тоже бы проще получилась.если нужно могу выложить книженцию=)
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 23.06.2009, 10:22 | |
|
Можно было бы. Но тут ведь смысл, не в том, чтобы сделать нечто ТАКОЕ, а чтобы понять в принципе, как это делается, из каких частей состоит игра, как реализованиа каждая часть, и как эти части взаимодействуют между собой.
Я не думаю, что на вижле бы получилось проще.
0
|
|
|
|
|
| 23.06.2009, 10:24 | |
|
Учиться делать надо на том, что проще и на чём умеешь работать. В данном случае у автора имеется советчик, работающий на борланде, и одного только этого факта достаточно для того, чтобы выбор пал именно на борланд
0
|
|
|
38 / 24 / 4
Регистрация: 21.02.2009
Сообщений: 249
|
|
| 23.06.2009, 11:31 | |
|
Согласен=)Поэтому и сказал респект.я слежу за процессом создания и так сказать и для себя нахожу много интересного
0
|
|
|
129 / 126 / 22
Регистрация: 23.06.2009
Сообщений: 700
|
|
| 24.06.2009, 00:05 | |
|
блин красавци.. прочитал все 10 страниц ))) аж сам загорелся чем то подобным пострадать гг
0
|
|
| 24.06.2009, 00:05 | |
|
Помогаю со студенческими работами здесь
100
Создание игры
Создание игры Создание игры на C++ Создание 3д игры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|