Q/A

Добавлен , опубликован
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
21
9 лет назад
Отредактирован Raised
0
ScorpioT1000, мне нужно чтоб камера реагировала не на рельеф (это уже сделано), а на настоящую высоту юнита, которая предположительно зависит от деформирующего фактора некой невидимой/неописанной карты высот/маски, по которой передвигаются летающие юниты.
0
28
9 лет назад
Отредактирован nvc123
0
RiseD, столько бреда за раз я давно не слышал
location lguz=Location(0,0);
unit myunit= // юнит к которому крепим камеру

define height=1800 //высота камеры относительно юнита

float GetZ(float x,float y){
    MoveLocation(lguz,x,y);
    return GetLocationZ(lguz);
}

void Update(){ // эту функцию вешаем на таймер с периодом 0,025
    float z=GetZ(GetUnitX(myunit),GetUnitY(myunit));
    if(z<0){
        z=0;
    }
    if(GetOwningPlayer(myunit)==GetLocalPlayer()){
        ResetToGameCamera(0);
        SetCameraField(CAMERA_FIELD_TARGET_DISTANCE,z+GetUnitFlyHeight(myunit)+height,0);
        SetCameraTargetController(myunit,0,z/2,false);
    }
}
пишу по памяти но вроде работает
0
21
9 лет назад
0
nvc123, размести юнита с фиксированной высотой полёта в эдиторе - его высота будет напрямую зависеть от рельефа, но в игре высота его полёта зависит не только от рельефа. В остальном да - весьма вероятно что я написал бред. Сейчас проверю что вышло.
0
28
9 лет назад
0
RiseD, высота полёта зависит от рельефа и высоты
0
24
9 лет назад
0
nvc123, в зависимости от типа передвижения еще может применяться интерполяция на перепадах высоты, была у меня когда-то проблема с этим, когда я систему снарядов делал.
0
21
9 лет назад
Отредактирован Raised
0
nvc123, твоя штука устанавливает высоту камеры над юнитом на высоту точки рельфа под юнитом. Это не правильно.

prog, как решил?
0
24
9 лет назад
0
RiseD, это лет пять назад было, если не больше, не помню уже. Скорее всего экспериментами с типом движения, но это работает для снарядов, но не очень применимо для всего остального.
0
21
9 лет назад
0
prog, если ты про добавление/удаление морфа ворона, то это не оно. Оно не применимо к камере. А вот об интерполяции я бы почитал. Есть какой-либо материал по этой теме?
0
28
9 лет назад
Отредактирован nvc123
0
RiseD, я проверил свой код
он нормально работает над рельефом, водой и преградами(декор/юниты)
хз что тебе ещё надо
prog, сдвиг по y сглаживает последствия интерполяции для камеры
RiseD:
А вот об интерполяции я бы почитал. Есть какой-либо материал по этой теме?
какой материал
при большом перепаде высот летающие юниты используют интерполяцию чтобы не сразу падать вниз как камень а плавно опускаться
длится подобный эффект недолго
и при использовании сдвига по y почти не отражается на камере
0
21
9 лет назад
0
Мне нужно настроить параметр "CAMERA_FIELD_ZOFFSET", а не "CAMERA_FIELD_TARGET_DISTANCE". Какой сдвиг? от чего зависит величина этого сдвига?
2
28
9 лет назад
2
RiseD, ты мой код хоть тестировал?
и читал его?
или увидел 1 параметр и сразу кричать код гамно
судя по тому что ты писал до того как начать нести всякую херь тебе надо чтобы летающий юнит всегда был в центре камеры и не выходил за её пределы вне зависимости от того над чем он летит
я прав?
если нет то объясни нормально что должно получится
не прибегая к тому что тебе кажется или ты подумал
просто скажи как должен выглядеть результат
ибо в твоих комментах дофига того как по твоему всё работает но нету нигде того что должно быть на выходе (а ведь начинать надо с конца, тоесть с чёткого осознания того как будет выглядеть результат)
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.