Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
1

Подкиньте идею

25.11.2013, 20:46. Показов 1509. Ответов 21
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Пишу потихоньку свой фреймворк для разработки игр. В главном цикле связанной список игровых обьектов обрабатывается: логика, коллизия, взаемодейтсвие и отрисовка. Но я хочу задать своим объектам приоритеты для взаемодействия и отрисовки, то бишь объект с найбольшим приоритетом отрисовки рисуется первый и тд. Но в каждой итерации главного цикла как то не хорошо сортировать список за приоритетами по пару раз. Подскажите как быть.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.11.2013, 20:46
Ответы с готовыми решениями:

Подкиньте идею:)
В общем хочу написать прогу для того чтобы обмануть систему проверки на плагиат контрольных в...

подкиньте идею плиз, а то чёто не вьезжаю
1)Проверить, все ли строки матрицы содержат хотя бы один положительный элемент. Если да, то...

Подкиньте идею игры или программы
я занимаюсь C++) в TurboC30) могли бы подкинуть идей какой нибудь игрушки или программки)...

Пожалуйста, подкиньте идею для проекта
Нужно написать программу на С++ с использованием функций и динамических массивов(Начальный...

21
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
25.11.2013, 20:50 2
А с какой целью расставлять приоритеты? В работе с графикой всё равно двойная буферизация спасает.
Но, если уж так угодно, как вариант делать анализ производительности. Если производительность падает, то отсортировать по приоритету и откинуть лишние объекты со списка прорисовки.
0
188 / 187 / 46
Регистрация: 24.03.2011
Сообщений: 670
25.11.2013, 20:50 3
Используй priority_queue =)
1
Заблокирован
25.11.2013, 20:52 4
Цитата Сообщение от Hunter13ua Посмотреть сообщение
В работе с графикой всё равно двойная буферизация спасает.
спасает деф / стенсил буффера

Добавлено через 1 минуту
Цитата Сообщение от anubis1768 Посмотреть сообщение
Но я хочу задать своим объектам приоритеты для взаемодействия и отрисовки, то бишь объект с найбольшим приоритетом отрисовки рисуется первый и тд.
так никто не делает, это не верно
0
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 20:57  [ТС] 5
Цитата Сообщение от Hunter13ua Посмотреть сообщение
В работе с графикой всё равно двойная буферизация спасает.
При чем здесь двойная буферизация? Вот у меня два спрайта в списке с1 и с2. с1 нарисуется первым, потому что я его(для примера) в список затолкну первым. Но я хочу чтобы с2 рисовался первым.

Не по теме:

Думать надо что пишешь


monolit, извини, на вечер уже башка квадратная, с cpusplus ни фига не понял. То есть при каждом добавлении элемента все элементы сортируются? То есть, те же яйца, только в профиль получается.

Добавлено через 54 секунды
Цитата Сообщение от newbie666 Посмотреть сообщение
это не верно
Как же тогда верно? Подскажите
0
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
25.11.2013, 20:59 6
Ну так я и спросил: зачем это вам нужно? С помощью двойной буферизации вывод на экран будет одновременным, не зависимо от того, кто первым был подан на отрисовку.
Цитата Сообщение от newbie666 Посмотреть сообщение
деф
Что за деф буфер ? Не узнаю по-названию.
0
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 21:02  [ТС] 7
Цитата Сообщение от Hunter13ua Посмотреть сообщение
одновременным
хорошо, если еще не поняли, растолкую до конца. Как Вы думаете, если у с1 и с2 одинаковые координаты, вывод будет одновременным? Или один накладется на другой?
0
Заблокирован
25.11.2013, 21:02 8
Цитата Сообщение от Hunter13ua Посмотреть сообщение
Что за деф буфер ? Не узнаю по-названию.
http://ru.wikipedia.org/wiki/Z... 0%B8%D1%8F

Цитата Сообщение от anubis1768 Посмотреть сообщение
Как же тогда верно? Подскажите
я говорил про 3Д графику, в 2Д конечно идёт очередь и слои
1
2 / 2 / 0
Регистрация: 18.07.2013
Сообщений: 15
25.11.2013, 21:03 9
А никто за денюшку сейчас не может в скайпе помочь написать код? лёгенький для опытного программера!!!!
0
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
25.11.2013, 21:06 10
Воот. Это я и спрашивал. Да, я не о том говорил. Это надо сортировать по глубине, а не приоритету. Собственно stencil buffer, о котором newbie666 уже написал, и будет решением.

Не по теме:

Непривычные названия для меня - вот и не сразу понял.

1
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 21:07  [ТС] 11
Цитата Сообщение от newbie666 Посмотреть сообщение
2Д конечно идёт очередь и слои
То есть моя идея костильная или вполне сойдет?
0
newbie666
25.11.2013, 21:07
  #12

Не по теме:

Цитата Сообщение от McRubic Посмотреть сообщение
А никто за денюшку сейчас не может в скайпе помочь написать код?
я после работы ща без задних ног (понедельнеГ же - день тяжкий) - лично мне впадлу ща напрягаться :D

1
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 21:08  [ТС] 13
Hunter13ua, Одна проблема: я работаю с 2д
0
Заблокирован
25.11.2013, 21:10 14
Цитата Сообщение от anubis1768 Посмотреть сообщение
обрабатывается: логика, коллизия, взаемодейтсвие и отрисовка
какая к чертям коллизия и взаимодействие между BMP картинками в 2D ? У тебя ж спрайты вроде
2Д графика заранее распределяется по слоям, например фон, главный герой, его автомат, его ... и тд Зачем во время игры что - то сортировать ?
0
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
25.11.2013, 21:11 15
С 2д даже проще. Если хотите избавиться от сортировки: введите лишнюю переменную Z. И при добавлении в очередь прорисовки - пусть анализирует в какое место очередь ставить объект именно по этой переменной.
1
Заблокирован
25.11.2013, 21:13 16
или у тебя игра типа червячков http://free-tracker.net/upload... 89bef.jpeg
где можно 2Д землю как бы разрушать, по которой черви и ползают
0
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 21:16  [ТС] 17
newbie666, Вы наверное меня не поняли. Вообще. Давайте все сначала. Вот есть класс который описывает игровой объект. Он может рисоваться. Если два объекта столкнулись, например пуля и игрок, значит игрок убит или пуля взорвалась. Правильно? Уже есть какое-то взаемодействие и логика. Ну и конечно коллизию надо тоже проверять. Так вот, к чему я веду. Если вместо пули пусть будет ракета. Будет взрыв. А вот взрыв закроет спрайт игрока, потому что он добавляется позже в список. А я так не хочу. Я хочу, чтобы нарисовался взрыв а потом игрок
0
Заблокирован
25.11.2013, 21:20 18
Цитата Сообщение от anubis1768 Посмотреть сообщение
А вот взрыв закроет спрайт игрока, потому что он добавляется позже в список. А я так не хочу.
странная логика, взрыв наоборот должен быть спереди...
А в чём проблема то? Как и предлагалось выше, задайте каждому объекту координату Z, и рисуйте их в порядке убывания например....
0
2 / 2 / 0
Регистрация: 18.07.2013
Сообщений: 15
25.11.2013, 21:22 19
Цитата Сообщение от newbie666 Посмотреть сообщение

Не по теме:


я после работы ща без задних ног (понедельнеГ же - день тяжкий) - лично мне впадлу ща напрягаться :D

Очень жаль, ну отдыхай братишь мб ещё ктонибудь откликнится) код лёгкий но не для меня. Нам дали методичку на паскале ничего не обьясняют. Сказали пишите ... печаль беда я уже 4 лабы всей группе сделал эту не могу(
0
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
25.11.2013, 21:25  [ТС] 20
Цитата Сообщение от newbie666 Посмотреть сообщение
странная логика, взрыв наоборот должен быть спереди...
Это просто пример.
Цитата Сообщение от newbie666 Посмотреть сообщение
А в чём проблема то? Как и предлагалось выше, задайте каждому объекту координату Z, и рисуйте их в порядке убывания например....
Идея такая же, как у меня была, просто я мутно пояснил. Но все равно спасибо
0
25.11.2013, 21:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.11.2013, 21:25
Помогаю со студенческими работами здесь

Программно найти кнопку в flash'e, подкиньте идею)
Пишу бота для одной браузерной игры, написанной на флеше. Собственно основную часть написал, все...

Подкиньте практику по С/С++
Подкиньте пару сайт или книг с практикой по С++. Этот форум не подходит, тут сильно сложные...

Подкиньте задачку
Подкиньте задачку какую-нибудь(да хоть от балды насочиняйте с потолка). Не обязательно сложный...

Подкиньте рандомно задачки
На темы: 1. Переменные. 2. Массивы. 3. Типы данных. 4. Циклы Что нить из этого.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru