|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
Создание игры(2d)12.05.2009, 21:08. Показов 102442. Ответов 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
|
|
| 13.12.2009, 19:10 | |
|
А зачем тебе для вывода русских букв использовать Юникод? Оно и просто так отлично выводится.
А уж если уж хочется выводить, например, китайские иероглифы, то пользуйся функцией Canvas->TextOutW + юникодный шрифт типа Arial Unicode MS. Добавлено через 1 минуту А если у тебя Canvas->TextOut("Привет",0,0) выводит кракозябры, то это значит, что у тебя бока с кодировкой.
1
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
|
| 13.12.2009, 20:29 [ТС] | |
|
Разобрался, проблема была в кодировке Windows 7, тогда ещё вопрос, как можно свой шрифт засунуть в программу?
0
|
|
|
говнокодер
1273 / 297 / 35
Регистрация: 31.10.2009
Сообщений: 1,432
|
|
| 14.12.2009, 11:57 | |
|
1
|
|
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
||||||
| 14.12.2009, 23:49 [ТС] | ||||||
|
Спасибо большое.
Последний вопрос - есть .txt файл: test.txt { a 10 b 20 text Hello World n 30 } Как мне вынуть именно "Hello World" в String text? Попробовал вот так:
Если while(t!="/text") поменять на while(t=="/text"), программа компилится нормально. Подскажите, пожалуйста, где моя ошибка? Спасибо.
0
|
||||||
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
||||||||||||||||
| 15.12.2009, 16:56 | ||||||||||||||||
|
Но ведь нельзя так сравнивать массивы байтов.
Если
А почему text со слешем("/text")?
1
|
||||||||||||||||
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
||||||
| 15.12.2009, 20:23 [ТС] | ||||||
|
Отака, как всегда, нечеловеческое спасибо тебе, всё заработало.
В предыдущем посте допустил ошибку, объясняю: Есть text.txt из которого нам нужно вынуть параметр text. text.txt file: a 10 b 20 text Hello,World! /text c 210 Пишем для него такую функцию:
0
|
||||||
|
Программист TH
292 / 147 / 12
Регистрация: 06.01.2009
Сообщений: 537
|
|
| 15.12.2009, 20:37 | |
|
Как вы в игрухе изображение вращали ?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
||||||
| 15.12.2009, 20:56 | ||||||
|
Вот так вот:
1
|
||||||
|
Программист TH
292 / 147 / 12
Регистрация: 06.01.2009
Сообщений: 537
|
|
| 16.12.2009, 14:17 | |
|
Хм, а второй параметр в чем у вас измеряется ?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
||||||
| 16.12.2009, 17:09 | ||||||
|
Вроде бы как в градусах, но может я уже забыл и там в радианах... хотя нет, в градусах. Мы ведь там внутри их переводим в радианы
1
|
||||||
|
Задающий вопросы (%
16 / 15 / 0
Регистрация: 09.05.2009
Сообщений: 168
|
||||||
| 20.12.2009, 00:09 [ТС] | ||||||
|
Как достать блок данных из txt файла.
Кому интересно. Предположим у нас есть класс планета:
InitPlanet("Sun","Configs\\Engine\\Plane ts.txt") Planets.txt { Earth Ang 27 OrbitVel 365 SolarKof 10 /Planet Sun AngVel 0 OrbitVel 0 SolarKof 100 /Planet Venus AngVel ? OrbitVel ? SolarKof ? /Planet Только информация из нужного нам блока заносится в класс Planet. Добавлено через 22 часа 41 минуту Отака, а как нам заставить тело двигаться по орбите(вокруг чего то)?
0
|
||||||
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 20.12.2009, 12:31 | |
|
Полярные координаты.
x=cos(текущий угол в радианах)*длина_орбиты+X_центр_вращения y=sin(текущий угол в радианах)*длина_орбиты+Y_центр_вращения. это будет круговая орбита. Если нужна эллиптическая, то можно приплюсовывать еще один sin(или cos, не важно, просто фаза будет чуть-чуть изменена) к X, и тогда орбита будет вытягиваться по X, так же можно делать и с Y. Тем самым заставляя орбиты быть эллиптическими. Если надо, могу написать пример.
1
|
|
|
Программист TH
292 / 147 / 12
Регистрация: 06.01.2009
Сообщений: 537
|
||
| 20.12.2009, 19:03 | ||
0
|
||
|
35 / 35 / 6
Регистрация: 29.08.2009
Сообщений: 183
|
|
| 24.12.2009, 21:12 | |
|
Заинтересовался данной темой, сам сейчас пытаюсь написать игру стрелялку такого же плана для курсовой. Меня из всех проблем больше всего интересует как сделать сам выстрел, как сделать его понаправлению, и чтобы пуля не летела от точки А до точки Б ? Можно ли это в Си или лучше учить флэш?
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 24.12.2009, 21:21 | |
|
Конечно можно в С, С++ и во флеше.
А почему " чтобы пуля не летела"? Чтобы не летела, нужно просто проверять на столкновение линии от А к Б с объектами(как это сделать, смотри в этой теме, про регионы). А чтобы летели пули, нужно высчитать арктангенсом угол(если ты его еще не знаешь), а потом на каждом шаге с помощью полярных координат(dx=cos(угол)*скорость, dy=sin(угол)*скорость)вычисляешь следующее положение пули. Во флеше, конечно, может быть это и проще будет немного.
1
|
|
|
35 / 35 / 6
Регистрация: 29.08.2009
Сообщений: 183
|
|
| 24.12.2009, 22:13 | |
|
А есть же в математике "уравнение прямой" .. через такое уравнение можно чтото сделать ? ... я просто не понимаю как в Си сделать так, чтобы одновременно летело несколько пуль и каждая со своей тракторией. По идеи создавать для каждой пули отдельный Timer и отдельное Image не выход))))))
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 24.12.2009, 22:19 | |
|
Почитай эту тему сначала до конца. Я уже писал, как сделать динамический массив пуль, и чтобы каждая пуля летела по своей траектории.Уравнение прямой для этой задачи хоть и подходит, но оно тут не нужно, так как все можно сделать гораздо проще.
0
|
|
|
35 / 35 / 6
Регистрация: 29.08.2009
Сообщений: 183
|
|
| 24.12.2009, 22:21 | |
|
Otaka, Спасибо... постараюсь прочесть все в этой жизни и до того момента как меня охватит склироз кибер-мозга ))))
Не по теме: Может распечатать и книжку небольшую сделать из этой темы ? )))) Кстати, игра по ссылке, вылаженная как экземпляр меня напрягла. Она у меня слетала как только Опера набирала 2-3к Мб занятой оперативы. Это из-за того что хранилась информация о трупах на земле или что ?
0
|
|
|
35 / 35 / 6
Регистрация: 29.08.2009
Сообщений: 183
|
||
| 23.01.2010, 16:47 | ||
|
а вторая - прицел (мышь) если сделать так. X= (положением мыши по X) -30 + (rand()%60); Y= (положением мыши по Y) -30 + (rand()%60); Получется круг радиусом в 30 пикселей - и есть точность. Сойдет? ![]() Не по теме: Можно кстати взять переменную Accuraty (Acc) и пусть игрок ее прокачивает в минус. (тоесть изначально =60 , а потом с уровнем по -1 прибавляется. И тогда вместо 30 писать Acc а прибавлять "(rand()%Acc*2)". Добавить так сказать элементы RPG :) Добавлено через 2 минуты Вопрос такой вот. По поводу выстрелов. Можно ли взять картинку пули, и каждый раз когда игрок стреляет копировать ее создавая новый объект TImage и крутить под нужным углом. И удалять каждый раз при попадании или ухода за экран?
0
|
||
|
18 / 18 / 1
Регистрация: 24.09.2009
Сообщений: 98
|
|
| 01.02.2010, 21:02 | |
|
Можно. Я так делал. Классы тебе в этом помогут.
0
|
|
| 01.02.2010, 21:02 | |
|
Создание игры
Создание игры Создание игры на C++ Создание 3д игры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|
|
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время?
Никакой пенсии. Никакого нового. . .
|
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю
Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы
Кратко. . .
|
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем
**Полевые заметки о двухнедельной совместной работе**. . .
|
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики
1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
|