Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Тема для новичков. Вопросы по маппингу/моддингу - любые! Пред.  1, 2, 3 ... 241, 242, 243 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!Ответить
АвторСообщение
ChaingunPredator
- Captain -
Next rank: = Captain = after 147 points
2193

Doom Rate: 1.84
Ссылка на пост №4821 Отправлено: 18.09.13 20:40:35
Dagamon :
А как ACS привязать к декорейту?

Кажется я писал несколькокими постами выше?
ACS_ExecuteAlways(script, map, s_arg1, s_arg2, s_arg3) //все аргументы писать необязательно, достаточно первых двух.
5 1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4822 Отправлено: 23.09.13 00:15:50
У меня почему то не работает функция SetActorPosition.
while (TRUE) {
  int x,y,z;
  x=;
  y=;
  z=;
  SetActorPosition(102, x, y, z, 0);
  ...
  delay(1);
}

Этот код находится внутри скрипта script 1 ENTER { ... }

102 - тэг объекта (актора, в терминах ZDoom), который требуется переместить.
Всегда возвращает FALSE.
Пробовал перемещать монстров, убитых монстров, свечу, всякие экзотические объекты (типа Patrol Points), ничего не хочет работать.
Этот объект (102) нужен лишь как координата для спавнинга ракет, поэтому не важно, чем именно он будет.

P.S. Я не думаю, что это прямо-таки из-за того, что функция находится внутри script 1 ENTER...
1 7 13
Nil
= Major =
Next rank: Lieutenant Colonel after 312 points
2978

Doom Rate: 2.34
Ссылка на пост №4823 Отправлено: 23.09.13 00:24:01
VladGuardian
Потому как ты понятия не имеешь, что ты делаешь. И не умеешь задавать вопросы. И не умеешь читать руководства. Прочитай в ZdoomWiki, какие аргументы у функции SetActorPosition.
1 2 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4824 Отправлено: 23.09.13 01:21:15
Nil
На самом деле, не из-за аргументов. (fixed-координаты я подавал в функцию правильно)

А в другом.

Так что твой упрек в моей неумелости отклоняется.
1 7 13
Nil
= Major =
Next rank: Lieutenant Colonel after 312 points
2978

Doom Rate: 2.34
Ссылка на пост №4825 Отправлено: 23.09.13 06:45:57
VladGuardian, В неумении задавать вопросы не отклоняется. строки, как ты вычисляешь координаты ты очень зря убрал. Кроме того, тебе нужно в этот кусок кода, если он не работает, насовать везде отладочной печати (log). Сейчас-же речь идёт об угадайке. Причины могут быть любыми — ты переносишь объект в стену, внутрь другого объекта, у тебя одна из координат всё-же не в fixed, у тебя Z координата не относительна пола, а абсолютна, у тебя несколько объектов с 102 tid и что-нибудь ещё, что нельзя узнать из твоего поста, потому что ты не очень сильно озаботился в том, чтобы помочь людям, которые хотят тебе помочь.
1 2 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4826 Отправлено: 23.09.13 09:55:10
Nil :
Причины могут быть любыми
Согласен.
Nil :
ты переносишь объект в стену

внутрь другого объекта

одна из координат всё-же не в fixed
1) Нет.
2) Нет.
3) И тоже нет.
Nil :
Z координата не относительна пола, а абсолютна
Вот это честно говоря, не проверял, но у меня пол близко от нуля (около 6 mapunits), так что не думаю, что это особо существенно (новый Z я устанавливал высоко, намного выше значения Z пола).

Оказывается, SetActorPosition очень интересная функция. Она НЕ ПЕРЕНОСИТ объект напрямую в новую точку, а (как бы) передвигает объект плавно по траектории.
В результате низенький бордюрчик в 2 mapunits высотой ОСТАНАВЛИВАЕТ перемещение объекта (функция при этом фейлит). Наверное, тут таки имеет место застревание внутри стенки...
Если надо - могу пруф (в виде вада-примера).
(Свечка двигается по полу - функция возвращает TRUE, как только свечка упёрлась в бордюрчик - сразу FALSE, и дальше свечка не "едет")
В итоге я отказался от долбаной (имхо) функции SpawnProjectile (которой как ни крути, но потребуется SetActorPosition в качестве дополнения), и вернулся к старой доброй Spawn:

int x,y,z, vx,vy, angle;
x = <присвоение_fixed_я_отвечаю>;
y = <присвоение_fixed_я_отвечаю>;
z = Random(128,215) << 16; //высота - в диапазоне 128..215 mapunits
angle = Random(0.5,1.0); //задаем случайное направление ракете
vx = FixedMul(cos(angle), 30.0);
vy = FixedMul(sin(angle), 30.0);

// спавним ракету в точке (x,y,z)
Spawn("Rocket", x, y, z, rocket_tid, angle / 256);  //деление на 256 - перевод угла из fixed в байтовое представление

// запускаем ракету со скоростью 30
SetActorVelocity(rocket_tid, vx, vy, 0, FALSE, FALSE);

Nil :
потому что ты не очень сильно озаботился в том, чтобы помочь людям, которые хотят тебе помочь.
Okay. На будущее - учту :baby1:
Nil :
насовать везде отладочной печати (log)

Я к такому прибегаю только в случае, если все более простые методы отказали.
1 7 13
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №4827 Отправлено: 23.09.13 13:09:24

Оказывается, SetActorPosition очень интересная функция.


Что-то тут не так. У меня она вполне успешно работала для реализации полёта сквозь стены в MOP. То есть переносила в заведомо невидимую напрямую часть уровня. И в гоззе и в зандронуме.
1 1
beigeboxcreature
- Sergeant -
Next rank: = Sergeant = after 20 points
320

Doom Rate: 1.35
Ссылка на пост №4828 Отправлено: 24.09.13 17:07:28
Кто-нибудь знает, такой эффект в ZDoom в принципе излечим? Возникает похоже при использовании 3D полов (экнш 160).
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4829 Отправлено: 26.09.13 15:11:12
beigeboxcreature
В чем делаешь, DoomBuilder-е или Slade? Давай свой вад сюда (через личку), я попробую покопаться. Я недавно тоже "дыры" у себя устранял...

У меня два предположения:
1) высота неба в районе окон выше высоты стены
и/или
2) на linedef-е окна висит какая-то "странная" middle-текстура

Вопрос к знатокам
Народ, кто знает - скайбоксы возможны в Буме?
Или только в GZDoom и VAVOOM-е такая прелесть возможна?
( http://zdoom.org/wiki/GLDEFS#Skybox_definitions )

И еще вопрос вдогонку: есть ли в моде Æons of death топоры? Чтобы мне зря не качать...

c4tnt :
Что-то тут не так.
Возможно, что-то и я криворуко делаю... с другой стороны, там вроде нечему "ломаться"... всё равно не люблю этот дурацкий SetActorPosition :? ненавижу библиотечные функции, с которыми приходится возиться более часа, чтобы разобраться. Еще большой вопрос - это криворукость юзера библиотеки (то есть, меня), или самого автора библиотеки, сделавшего такой "уязвимый" интерфейс у функции... Я уверен, не у одного меня в мире возникли траблы с этой функцией.
1 7 13
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №4830 Отправлено: 26.09.13 19:02:38
VladGuardian :
И еще вопрос вдогонку: есть ли в моде Æons of death топоры? Чтобы мне зря не качать...


Топоры есть - как обычные, так и магические (спрайты разных цветов)
Eternal
= Major =
Next rank: Lieutenant Colonel after 131 points
3159

Doom Rate: 3.78
Ссылка на пост №4831 Отправлено: 26.09.13 20:14:41
VladGuardian :
Народ, кто знает - скайбоксы возможны в Буме?

конечно возможны, тот же лумп что и в здуме. glboom-plus имеется ввиду я полагаю?
2 2 2
beigeboxcreature
- Sergeant -
Next rank: = Sergeant = after 20 points
320

Doom Rate: 1.35
Ссылка на пост №4832 Отправлено: 26.09.13 23:22:05
VladGuardian
В GZDB и DB2.
Эти "столбы в небе" появляются только в ZDoom, в GZDoom их нет. Причем только при определенном обзоре, как будто когда что-то попадает в зону рендеринга так сказать, при другой позиции их может быть не видно.
Т.к появились они после добавления 3D полов, я думаю может какая особенность их реализации в ЗДуме, в вики-то вообще написано, что это OpenGL only фича :)
Причем они есть на всех соединенных секторах с другой высотой, там где есть 3D полы, пробовал добавить такой сектор в другой локации, тоже с 3D полами, не связанной с этой - там так же. Где нет 3D полов - все норм.

VladGuardian :
1) высота неба в районе окон выше высоты стены

? Вообще, потолок снаружи коробки да, выше, и в оконном проеме еше ниже, чем внутри коробки. Так не должно быть что ли? Еще посередине в секторах окон 3D пол. И в коробке, как бы второй этаж.
VladGuardian :
2) на linedef-е окна висит какая-то "странная" middle-текстура

Я тоже думал сначала об этом, там прозрачная COMPBLUE с Wrap middle texture. Вроде убирал все мидл текстуры с окон - столбы остались.
Хотя она с 3D полом посередине конечно странно смотрится и мигает немного, уже в GZDoom :D Можно конечно посередине еще линию нарисовать, но мне кажется не так уж страшно.
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4833 Отправлено: 26.09.13 23:43:07
beigeboxcreature :
я думаю может какая особенность их реализации в ЗДуме

Да, возможно какая-то недоработка построения (или обработки во время рендеринга) BSP-дерева (или другого алгоритма, управляющего отсечением невидимых полигонов).
Это во многих играх кстати встречается, в той или иной степени. Когда с того или иного ракурса начинают "пропадать" дальние стены, или наоборот, отключается отрисовка ближних к игроку стен.
beigeboxcreature :
Эти "столбы в небе" появляются только в ZDoom, в GZDoom их нет.

Тут вообще ничего сказать не могу.
beigeboxcreature :
В GZDB

У меня даже после поверхностного просмотра этой темы отпадает всякое желание в ближайшие месяцы связываться с GZDB :) уж пусть допилят до рабочего состояния, а потом мучают людей. С другой стороны, ничего не имею против тех смельчаков, которые пилят свои вады сейчас в GZDB, увязая в трясине глупых проблем (типа обнуления текстур лайндэфов после пересоздания сектора и т.п.). Наоборот, считаю их отважными ребятами. :)
Более того, мапперам, широко использующим многоэтажность и наклонные полы, много динам.света, GZDB просто уже жизненно необходим.
Я например, крайне ограниченно использую слопы из-за того, что делать это в DB2 довольно неудобно, а переходить в GZDB я пока не хочу. Это еще то минное поле.
В XWE вижу целую кучу проблемок, хоть статью пиши. А это, по-большому счету, довольно стабильный редактор...
Вижу из-за того, что работаю с ним каждый день по многу часов, и все малейшие недостатки неизбежно замечаются.
Это я к тому, что даже в качественных вещах любые шероховатости нервируют, когда пользуешься этой вещью часто. Что уж говорить о GZDB...
1 7 13
Shadowman
= UAC Commissar =
Next rank: - UAC Marshal - after 297 points
6603

Doom Rate: 2.46
Ссылка на пост №4834 Отправлено: 27.09.13 00:12:57
VladGuardian :
У меня даже после поверхностного просмотра этой темы отпадает всякое желание в ближайшие месяцы связываться с GZDB

Делай в дб2, он не хуже. Гздб добавляет возможность увидеть динлайты и 3д модельки в 3д режиме, ну и еще несколько фич со смещением текстур аппер, миддл, ловер, что зачастую только путаницу вносит. но по ощущениям маппинг в гздб тормознее, все как то медленно рисуется что ли...
VladGuardian :
В XWE вижу целую кучу проблемок, хоть статью пиши.

хве нужен только как набивщик вадов, и то для классики. Для гз лучше пользоваться Slade.
1 6 2
Zeberpal_98
UAC Sergeant Major
Next rank: UAC Sergeant Major after 8 points
752

Doom Rate: 1.74
Ссылка на пост №4835 Отправлено: 27.09.13 00:14:33
VladGuardian

не совсем понял что именно надо перенести, не пробовал Thing_Move?
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4836 Отправлено: 27.09.13 00:39:50
Shadowman :
ну и еще несколько фич со смещением текстур аппер, миддл, ловер

Я не знал, что их вообще по отдельности можно двигать или алайнить :x ладно, проехали
Shadowman :
Для гз лучше пользоваться Slade.

Учту на будущее, или если возникнут непреодолимые проблемы с XWE (типа замусоривания вада остатками удаленных текстур, или порчи соседних лампов при вставке новых объектов в вад). Но пока "лихо еще тихо" - только XWE, привычка - вторая натура... :think:
Zeberpal_98 :
не совсем понял что именно надо перенести, не пробовал Thing_Move?

Действительно, совсем забыл, как-то зациклился на SetActorPosition, блин...
Перенести надо было "неживой" объект, который служит как "стартовая площадка" для выстрела ракетой, не более...
Я могу использовать например свечу или любой другой малозаметный объект, чтобы пулять ракетами в направлении игровой зоны.
(изначально я хотел использовать Dead lost soul, что было бы идеально)
Короче, "псевдо-кибер" на скриптах. Вот для этого требовалась функция-"двигалка", хм...
Но с SetActorPosition у меня ничего не вышло, ни с дохлым лостсоулом, ни со свечкой. Абзац.
Но я уже реализовал это через Spawn / SetActorVelocity.
1 7 13
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №4837 Отправлено: 27.09.13 14:40:51
Вообще по поводу SetActorPosition могу сказать, что я её использовал только с координатами, скопированными с другого эктора ( ну и некоторые приращения к ним добавлял иногда )
1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4838 Отправлено: 27.09.13 15:07:33
Угу, прямо как в "книжном" примере из вики :o http://zdoom.org/wiki/SetActorPosition
"Гладко было на бумаге, да забыли про овраги"...

Однако тут встречаются примеры и посложнее, с итерационным циклом коррекции координат актора:
(так что не всё так гладко в датском королевстве, как я и подозревал)

http://zdoom.org/wiki/Cleaned-up_third_person_camera :
If the camera was successfully spawned the spawn segment will now be skipped, and the script will begin moving the camera with the player. If when trying to move the camera into position a failure occurs, the script recalculates the coordinates and attempts to move the camera towards the player.

           else
      {
         while (!SetActorPosition (C_TID+p_num, x-cos(a)*xyr, y-sin(a)*xyr, z+sin(p)*r, 0) && r > 0)
         {
            r -= ADJUST_R;
            xyr = cos (p) * r >> 16;
         }
         
         SetActorAngle (C_TID + p_num, a);
         SetActorPitch (C_TID + p_num, p);
         
         if (r < MAX_R)
                              r += ADJUST_R;
      }
      
      delay (1);
   }
}

Хотя то, что движок НЕ позволяет поместить тело внутрь скалы, пола, и т.д. - ЭТО В ПРИНЦИПЕ, ПРАВИЛЬНО.
1 7 13
Archi]ASTS[
UAC General
Next rank: Unavailable after 0 points
12719

Doom Rate: 1.87
Ссылка на пост №4839 Отправлено: 27.09.13 15:38:20
VladGuardian :
Хотя то, что движок НЕ позволяет поместить тело внутрь скалы, пола, и т.д. - ЭТО В ПРИНЦИПЕ, ПРАВИЛЬНО.

Если человек хочет выстрелить себе в ногу(или голову, кому как), он имеет на это полное право. Все правильно. Все неправильно.
2 1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №4840 Отправлено: 27.09.13 16:13:45
Archi :
Человек хочет выстрелить себе в

Мне искренне жаль этого человека, Archi.

Видишь, а ZDoom более гуманен, чем твои умственные размышления :o не позволяет "выстрелить"
1 7 13
Страница 242 из 352Перейти наверх Пред.  1, 2, 3 ... 241, 242, 243 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!