Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Проекты на MidletPascal

Ответ
 
Опции темы
Старый 09.03.2009, 19:29   #91
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: The Maze

хорошо сделал двери cahekp! вижу разобрался в алгоритме.
___
Выкладываю с изменениями алгоритма:
теперь карта - одномерный массив,
убрал некоторые лишние вычиления,
вернул разрешение к 176x132 (работает на motorola V3i и др.)
реализовал свое решение, отрисовки дверей.
____
Что нужно:
выявить медленные участки кода и оптимизировать их.
квадратный корень ищется 50 раз за игровой цикл (но все-таки это кандидат на оптимизацию... не использовал твой алгоритм нахождения кв.корня, потому что программа висла.), даже если полностью исключить подпрограмму отрисовки спрайтов, то прирост скорости ~60%.
____
p.s. занимаюсь этим проектом для отдыха после работы, народ будет предлогать свои решения буду поддерживать его...
Вложения
Тип файла: zip r3d.zip (74.6 Кб, 608 просмотров)
(Offline)
 
Ответить с цитированием
Старый 09.03.2009, 21:46   #92
cahekp
Разработчик
 
Аватар для cahekp
 
Регистрация: 14.12.2008
Адрес: Томск
Сообщений: 530
Написано 270 полезных сообщений
(для 883 пользователей)
Ответ: The Maze

to abcdef:
> не использовал твой алгоритм нахождения кв.корня, потому что программа висла.
Да, было такое дело. Добавил дополнительное условие и перестало виснуть. Совсем.
(Offline)
 
Ответить с цитированием
Старый 09.03.2009, 22:08   #93
ASMjavaC
Оператор ЭВМ
 
Регистрация: 02.03.2009
Сообщений: 26
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: The Maze

поможете в написании этой проги
тут много "написано" всмысле измененных исходников..
я человек медленный и считаю что алгоритм arT необходимо как следует осмыслить потестить на ошибки.. впринципе тоесть необходимы еще движки.. чтобы в итоге сделать самый самый.. (думаю поняли), а так если чем могу помогу
(Offline)
 
Ответить с цитированием
Старый 09.03.2009, 22:28   #94
ASMjavaC
Оператор ЭВМ
 
Регистрация: 02.03.2009
Сообщений: 26
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: The Maze

abcdef
сейчас заметил или было так, но прицел сбит - огонь пускается на 10 пикселов в лево\право
(Offline)
 
Ответить с цитированием
Старый 10.03.2009, 14:53   #95
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: The Maze

cahekp - проверил твой кв.корень с дополнительной проверкой цикла - вроде не виснет, переработанный алгоритм находится в выложенном архиве, дополни выход из цикла: ... until (m=n) or (n=m+1)
___
про "прицел" не знаю... а вот насчет полета шара - то здесь накладываются погрешности вычислении при полете, а кроме того игрок поворачивается за раз на 4 градуса
(Offline)
 
Ответить с цитированием
Старый 11.03.2009, 13:11   #96
cahekp
Разработчик
 
Аватар для cahekp
 
Регистрация: 14.12.2008
Адрес: Томск
Сообщений: 530
Написано 270 полезных сообщений
(для 883 пользователей)
Ответ: The Maze

to ASMjavaC:
По поводу пилообразности... Текстуры кладутся правильно. Пилообразность - это погрешность в целочисленных вычислениях.
Она образуется из-за того, что во время текстуризации столбика шаг приращения не может принимать дробные значения. Из-за этого возникают вот такие вот "эффекты".
Так вот, чтобы не переводить шаг в вещественный тип (а вещественные числа очень медленные в вычислениях), мы пытаемся избавиться от этой погрешности, умножая шаг на 512, а во время определения цвета точки - деля его на 512.
Так вот, если шаг умножать не на 512, а, например, на 4096, то пилообразность практически полностью исчезает.
...
coof:=(63*4096) div hh;
...
setp(n, data[elem,TxLine+(yo div 4096)*64]);
...

Другое дело, что умножения на большие числа - это тоже не есть хорошо. Тут бы побитовым сдвигом влево/вправо поработать, вот тогда бы было все в шоколаде!
Миниатюры
Нажмите на изображение для увеличения
Название: saw1.JPG
Просмотров: 834
Размер:	7.3 Кб
ID:	5514  
(Offline)
 
Ответить с цитированием
Старый 12.03.2009, 10:35   #97
ASMjavaC
Оператор ЭВМ
 
Регистрация: 02.03.2009
Сообщений: 26
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: The Maze

тут говорили о проблеме убийства "проворных" врагов
предлагаю управление (дополнительное по цифровой клаве):
1 - движение вперед с поворотом влево + огонь
2 - движение вперед + огонь
3 - движение вперед с поворотом вправо + огонь
4 - движение боком влево + огонь
5 - (наверно просто огонь стоя или поворот на 180 градусов)
6 - движение боком вправо + огонь
7 - движение назад с поворотом влево + огонь
8 - движение назад + огонь
9 - движение назад с поворотом вправо + огонь

еще остается * 0 # для них можно в будущем сменить оружие, включить фонарик, бросить гранату или еще чтонибудь другое
(Offline)
 
Ответить с цитированием
Старый 12.03.2009, 13:21   #98
cahekp
Разработчик
 
Аватар для cahekp
 
Регистрация: 14.12.2008
Адрес: Томск
Сообщений: 530
Написано 270 полезных сообщений
(для 883 пользователей)
Ответ: The Maze

to ASMjavaC: На мобильнике нельзя нажимать более, чем одну клавишу. "Движение вперед с поворотом влево + огонь" выполнить не получится.
(Offline)
 
Ответить с цитированием
Старый 15.03.2009, 14:28   #99
ASMjavaC
Оператор ЭВМ
 
Регистрация: 02.03.2009
Сообщений: 26
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: The Maze

cahekp
1 - движение вперед с поворотом влево + огонь
это означает что при нажатии на циферку 1 будет происходить движение вперед с поворотом влемо и притом еще и стрелять или опять не понятно?
(Offline)
 
Ответить с цитированием
Старый 30.03.2009, 11:20   #100
KAK? TAK!
Нуждающийся
 
Регистрация: 07.03.2009
Сообщений: 98
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: The Maze

тогда игра еще больше будет тормозить
(Offline)
 
Ответить с цитированием
Старый 30.03.2009, 13:51   #101
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: The Maze

это вообще ни как не скажется на скорости... просто непривычно как-то
(Offline)
 
Ответить с цитированием
Старый 30.03.2009, 17:13   #102
KAK? TAK!
Нуждающийся
 
Регистрация: 07.03.2009
Сообщений: 98
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: The Maze

ну незнаю производительность зашкаливать будет
(Offline)
 
Ответить с цитированием
Старый 02.04.2009, 19:20   #103
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: The Maze

Интересный проэкт. Но тормозит на моём к610й. Может его лучше было бы сделать на нормальной j2me?
(Offline)
 
Ответить с цитированием
Старый 02.04.2009, 19:31   #104
KAK? TAK!
Нуждающийся
 
Регистрация: 07.03.2009
Сообщений: 98
Написано 3 полезных сообщений
(для 3 пользователей)
Ответ: The Maze

не нужно просто не использовать бмп
(Offline)
 
Ответить с цитированием
Старый 03.04.2009, 00:14   #105
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: The Maze

А что бмп его тормазит?
П.с. не знаете где найти информацию как вращать картинку по всем трём осям в 3д пространстве? Хотелось бы и свой превдо 3д движок сделать.
В этой игре картинки только по одной оси вращаются, мне бы хотелось большего.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:25.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com