|
С# Средство разработки на платформе .Net |
22.06.2012, 12:26
|
#91
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Вопросы по XNA.
И в этой ситуации уже ничего не поможет?
|
Там есть разные режимы. Например, когда ты думаешь что нарисовал много-много тайлов, а реально процессор их отсортировал и только потом по порядку вывел на экран. Он, наверно, медленнее, но не должно быть проблем с почти одинаковыми значениями глубины
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
22.06.2012, 12:43
|
#92
|
быдло
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений (для 1,489 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
Не в этом беда. Если говорить про тайлы, то это равносильно тому, что тайлы пересекаются. И в этой ситуации уже ничего не поможет?
|
Зачем они пересекаются?!
|
(Offline)
|
|
22.06.2012, 13:05
|
#93
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Это я к примеру говорил
Если говорить о твоей схеме, то проблема в том, что кусты пересекаются. Кусты это отдельный массив, поэтому присваивать каждому кусту отдельную глубину неудобно.
|
(Offline)
|
|
23.06.2012, 17:05
|
#94
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Ладно, с этим вопрос решен. Как оказалось, быстрее будет 2 пробега по массиву сделать, чем использовать BackToFront режим.
Теперь у меня возник вопрос про UnloadContent(). Далеко не во всех примерах люди хоть что-нибудь писали в зоне UnloadContent(), поэтому и я ничего не писал. Но сейчас подумал, что если бы все было автоматически, этой зоны бы вообще не было. В общем, необходимо ли выгружать контент при выходе из игры вручную, или XNA самостоятельно справится?
|
(Offline)
|
|
24.06.2012, 16:35
|
#95
|
быдло
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений (для 1,489 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
Ладно, с этим вопрос решен. Как оказалось, быстрее будет 2 пробега по массиву сделать, чем использовать BackToFront режим.
Теперь у меня возник вопрос про UnloadContent(). Далеко не во всех примерах люди хоть что-нибудь писали в зоне UnloadContent(), поэтому и я ничего не писал. Но сейчас подумал, что если бы все было автоматически, этой зоны бы вообще не было. В общем, необходимо ли выгружать контент при выходе из игры вручную, или XNA самостоятельно справится?
|
При выходе не нужно. Но можно(нужно) сделаь чтбы выгружались текстуры которые используются в меню, когда начинается сама игра и наоборот
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
25.06.2012, 02:45
|
#96
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Спасибо.
Возникло два вопроса. Первый, ответ на который мне очень нужен, и второй, который нужен просто для ознакомления.
Если у меня есть вектор позиции игрока и вектор скорости, то для получения новой координаты игрока нужно сложить эти два вектора? Или все же умножить их? Просто если делать с умножением, то ничего не работает из-за того, что если вектор позиции равен 0, то никуда объект не сдвинется. А если складывать, то есть ли в этом смысл? Ведт тогда можно было сразу менять х и у вектора позиции.
Второй вопрос связан с 3Д миром. Что из себя представляет LinePick? Каким образом он работает? Я знаю, что это как бы луч который мы пускаем из камеры куда-нибудь, и благодаря нему мы можем узнать много инфы о пикнутом предмете( расстояне до него, его тип и тд). Но как обрабатывается в компьюетере? И еще. Где вообще можно узнать действительно верную информациюо о том, что для чего нужно, как это работает и так далее. Просто сейчас я смутно представляю для чего что в компьютере нужно, а о том как оно работает я вообще ничего не знаю Это довольно плохо для программиста, как я считаю.
|
(Offline)
|
|
25.06.2012, 02:49
|
#97
|
Бывалый
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений (для 546 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
Спасибо.
Возникло два вопроса. Первый, ответ на который мне очень нужен, и второй, который нужен просто для ознакомления.
Если у меня есть вектор позиции игрока и вектор скорости, то для получения новой координаты игрока нужно сложить эти два вектора? Или все же умножить их? Просто если делать с умножением, то ничего не работает из-за того, что если вектор позиции равен 0, то никуда объект не сдвинется. А если складывать, то есть ли в этом смысл? Ведт тогда можно было сразу менять х и у вектора позиции.
|
А сложение векторов это по твоему что?
|
(Offline)
|
|
25.06.2012, 02:59
|
#98
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Я поэтому и спросил, есть ли в этом смысл.
|
(Offline)
|
|
25.06.2012, 03:04
|
#99
|
Бывалый
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений (для 546 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
Я поэтому и спросил, есть ли в этом смысл.
|
Ну допустим вектор позиции называется pos, а скорости speed.
pos+=speed;
тоже самое что
pos.X+=speed.X;
pos.Y+=speed.Y;
но зачем писать больше?
|
(Offline)
|
|
25.06.2012, 03:12
|
#100
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Зачем так делать? Можно сразу тогда сразу изменять координаты pos на какое-то число. То есть нажата стрелка вверх - уменьшать Y и так далее.
Мне нужно векторное перемещение для того, чтобы не было бага с двойной скорости, когда нажимаешь сразу клавишу вверх и вбок. Знаю как можно это исправить без векторов( Cos45*speed), но это не торт, когда вектора есть.
|
(Offline)
|
|
25.06.2012, 03:35
|
#101
|
Бывалый
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений (для 546 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
Зачем так делать? Можно сразу тогда сразу изменять координаты pos на какое-то число. То есть нажата стрелка вверх - уменьшать Y и так далее.
Мне нужно векторное перемещение для того, чтобы не было бага с двойной скорости, когда нажимаешь сразу клавишу вверх и вбок. Знаю как можно это исправить без векторов( Cos45*speed), но это не торт, когда вектора есть.
|
Float spd = 3f; // Это скорость перемещения.
Vector Speed = Vector2.Zero; //вектор направления движения.
bool isMoved=false;
if нажато вверх { Speed+= new Vector2(0,-1); isMoved=true;}
if нажато вниз { Speed+= new Vector2(0,1); isMoved=true;}
if нажато влево { Speed+= new Vector2(-1,0); isMoved=true;}
if нажато вправо { Speed+= new Vector2(1,0); isMoved=true;}
if (isMoved)
{
Speed.Normalize(); //X и Y изменяются, так что длина вектора стает равной 1
Speed*=spd;
pos+=Speed;
}
Что-то типа такого можешь сделать.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
25.06.2012, 15:45
|
#102
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
А чем отличается Normalize вектор от обычного?
|
(Offline)
|
|
25.06.2012, 15:51
|
#103
|
Бывалый
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений (для 546 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от Nikich
А чем отличается Normalize вектор от обычного?
|
Сохраняет направление, но его длина становится равной единице.
по сути, тоже умножение на cos45 для твоего случая.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
25.06.2012, 17:14
|
#104
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Вопросы по XNA.
Нужна помощь с рисованием текстуры. Максимальное разрешение текстуры 4096x4096. А если мне нужна текстура, в разы больше этой? Как тогда обойти это ограничение?
|
(Offline)
|
|
25.06.2012, 17:15
|
#105
|
Бывалый
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений (для 546 пользователей)
|
Ответ: Вопросы по XNA.
Рисовать несколько текстур (с) кэп
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 06:06.
|