7.07.2012 / 18:32 | |
dzanis  Пользователь
Сейчас: Offline
Имя: Жаник Откуда: Rezekne Регистрация: 18.11.2010
| DominaN, нужно самому вызывать repaint,добавить такой оператор в бейсик.Прогер сам выберет где нужно прорисовать,а не так что сама прога прорисовку вызывает
|
7.07.2012 / 19:39 | |
Vapigor  Пользователь
Сейчас: Offline
Регистрация: 15.03.2012
| DominaN, Очень удобно. за это отдельное спасибо. А то в моей игре пункт меню внизу, на обычном их не видно.
__________________
 Делай шум! |
7.07.2012 / 19:40 | |
Vapigor  Пользователь
Сейчас: Offline
Регистрация: 15.03.2012
| dzanis, Что вообще такое репаинт? Для чего нужен?
__________________
 Делай шум! |
7.07.2012 / 19:58 | |
ScRoLiS  Пользователь
Сейчас: Offline
Регистрация: 28.06.2010
| Vapigor, Перерисовка.
__________________
 Чпок... Добрый вечер! |
7.07.2012 / 20:00 | |
Vapigor  Пользователь
Сейчас: Offline
Регистрация: 15.03.2012
| ScRoLiS, То есть мв станет быстрее?
__________________
 Делай шум! |
7.07.2012 / 21:46 | |
dzanis  Пользователь
Сейчас: Offline
Имя: Жаник Откуда: Rezekne Регистрация: 18.11.2010
| Vapigor, намного быстрее,ведь сейчас все версии прорисовываются 10 раз в секунду
|
7.07.2012 / 21:51 | |
DominaN  Пользователь
Сейчас: Offline
Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
| dzanis, Там вообще система стремная. Есть два Image. Гели рисуются на одно, которое затем рисуется на второе, на которое затем рисуются спрайты. А репаинт вообще из run() вызывается, и если его куда-нибудь перенести, скорость работы снизится примерно раза в 3. А со spritegel вообще ерунда какая-то. Мало того, что спрайты в Hashtable помещаются, так еще и в виде массива из двух объектов, из которых первый - Image, а второй - еще один массив int  |
7.07.2012 / 23:20 | |
dzanis  Пользователь
Сейчас: Offline
Имя: Жаник Откуда: Rezekne Регистрация: 18.11.2010
| DominaN, массив int это их координаты.Метод задуман для того чтоб програмисту не вычислять столкновения,а просто использовать SPRITEHIT.Конечно это удобство неудобно тем,что их прорисовка неконтролировалась.Незнаю ,что ты там сделал,ешё несмотрел. Ваше эту фигню надо убрать. Хотя на бейс коде своя проверка столкновения будет ну очень медленным .Вот код на яве: if (((x2 > x1) && (x2 < (x1 + w1))) ||
((x1 > x2) && (x1 < (x2 + w2))))
{
if (((y2 > y1) && (y2 < (y1 + h1))) ||
((y1 > y2) && (y1 < (y2 + h2))))
hitFlag = 1;
}
Поэтому эту проверку лучше оставить,но приоритет прорисовки оставить управляемым програмистом басика. |
7.07.2012 / 23:22 | |
HoldFast  Пользователь
Сейчас: Offline
Имя: Андрей Откуда: Великие Луки Регистрация: 18.04.2011
| dzanis, После энтузиазма, вызванным добавлением в бейсик команды REPAINT, выяснилось, что это ничего не меняет. Там сделано что после любой команды идёт REPAINT, и не имея сорцов всё остальное бесполезно
__________________
 Да, детка, я - Король Ящериц!!! |
7.07.2012 / 23:25 | |
DominaN  Пользователь
Сейчас: Offline
Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
| dzanis, я хочу вообще переписать эту систему нафиг. Вообще я имел в виду, что память засоряется лишними объектами, а Hashtable и так медленно работает, так еще и массивы в нее пихать, которые каждый раз преобразуются обратно и проверяются на выход за границы. Жесть корочи.
Изменено DominaN (7.07 / 23:28) (всего 1 раз) |