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 раз) |