30.04.2021, 22:48 | #301 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
С горизонтом и компасом разобрался. Прицел просто развернул на 180о перекинув нормали. У компаса чуток сдвинул координаты.
С прицелом сейчас работаю. Василий, тот фрагмент кода который ты выделил в кокпите А73А есть. Он имеет вот такой вид: Код:
private void leave() { if (bEntered) { HookPilot hookpilot = HookPilot.current; hookpilot.doAim(false); bEntered = false; Main3D.cur3D().aircraftHotKeys.setEnableChangeFov(true); CmdEnv.top().exec("fov " + saveFov); hookpilot.setSimpleAimOrient(0.0F, 0.0F, 0.0F); hookpilot.setSimpleUse(false); boolean bool = HotKeyEnv.isEnabled("aircraftView"); HotKeyEnv.enable("PanView", bool); HotKeyEnv.enable("SnapView", bool); mesh.chunkVisible("superretic", false); mesh.chunkVisible("Z_sight_cap_big", false); Последний раз редактировалось tvister; 30.04.2021 в 22:53. |
01.05.2021, 06:18 | #302 | |
Звичайна людина на Землі
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,122
|
Цитата:
Но ещё лучше, если названия мешей в коде будут совпадать с мешами в 3До кокпита твоего Джилика. Я бы не морочил себе голову, если бы научился ваять кокпиты, и оставил стандартные названия в коде, которые используются в классах дефолтных кокпитов... и в 3До так же б меши пообзывал(что бы совпадали имена мешей). Например, достал бы кокпит для Ки-27/43 и соорудил бы аналог(по именам). Последний раз редактировалось Vasya; 01.05.2021 в 06:22. |
|
01.05.2021, 09:16 | #303 | |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Совпадают, проверено.
Цитата:
Не знаю почему, но дефолтные классы не всегда у меня работают. В кокпите от автожира все работает, кроме CAMERAAIM и выяснить причину, почему так, я не могу. Мало знаний по яве. Можно тупо поставить прицел по центру, но это не наш путь... Появится время, попробую поставить классы от И-15. Вчера уже попробовал, но без привязки к названиям мешей, получил "море". |
|
01.05.2021, 13:52 | #304 | |
Звичайна людина на Землі
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,122
|
Цитата:
|
|
01.05.2021, 17:19 | #305 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
|
01.05.2021, 22:35 | #306 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Отправил в личку. Василий это незаконченная работа. Увидишь внизу три надписи, с ними надо работать и вообще весь нижне-левый угол нужно переделать. Хочу добавить управление высотным корректором, радиатором, тумблер стартера и рычаг бомбосброса. На редуктор уборки шасси (у меня раскрутка ротора), текстура легла неверно, переделаю. Есть небольшой ночной глюк горизонта и нет ночного освещения управления кислородным баллоном. А так вроде все должно работать.
Последний раз редактировалось tvister; 01.05.2021 в 22:40. |
02.05.2021, 21:20 | #307 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Видимо кокпит А7-3А работает нормально. В свободную минуту еще раз пересмотрел 3д и классы автожира. Потом уселся в кабину бомбера и то же при "включить прицел", "прильнуть к прицелу", получил незначительное движение камеры вперед. Другое дело жмакнуть кнопку "прильнуть к прицелу", из положения бомбардира, камера реально сдвигается к прицелу.
Вроде бы и знал об этом моменте... Открыл классы бомбардира и вот он, хук CAMERAAIM. Как правило сидит вот здесь: Код:
public CockpitTB_3_Bombardier() { super("3DO/Cockpit/TB-3-Bombardier/hier.him", "he111"); try { Loc loc = new Loc(); HookNamed hooknamed = new HookNamed(mesh, "CAMERAAIM"); hooknamed.computePos(this, pos.getAbs(), loc); aAim = loc.getOrient().getAzimut(); tAim = loc.getOrient().getTangage(); kAim = loc.getOrient().getKren(); } catch (Exception exception) { System.out.println(exception.getMessage()); exception.printStackTrace(); } cockpitNightMats = new String[] { "BombGauges", "Gauge03" }; setNightMats(false); interpPut(new Interpolater(), null, Time.current(), null); } |
02.05.2021, 22:01 | #308 |
Местный
Регистрация: 15.09.2008
Сообщений: 2,190
|
По моему ты полез не в те дебри. Проверь, чтобы в классе кокпита был прописан родительский класс CockpitPilot.
Типа: public class CockpitA7-3A extends CockpitPilot Тогда при нажатии клавиши "смотреть через прицел вкл/выкл" всё должно получиться |
02.05.2021, 22:52 | #309 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Такой класс есть.
|
03.05.2021, 10:49 | #310 |
Модератор
Регистрация: 28.02.2007
Адрес: Тула, Россия
Сообщений: 1,823
|
Читаю про прицелы и начинаю путаться... А вы похоже совсем запутались. Есть всего три варианта работы прицела.
1-самый простой, когда прицел обычный - хук CAMERA - это глаза пилота, этот хук только поворачивается и смещается командами 6DOF. хук CAMERAAIM включается в режиме "прильнуть к прицелу", находится как и CAMERA в кабине и реализует возможность центрирования сетки - пример Bf-109. Для реализации этой схемы не нужен код. 2-это имитация перископического прицела. В этом случае хук CAMERAAIM выносится за пределы модели кабины и помещается в цилиндр, для его активации нужен код включения мешей цилиндра, сетки и т.д. пример SBD-3 3-реализация перископического прицела как отдельной кабины, пример Р-5. Эта реализация похожа на кабину бомбардира и по коду и по модели. Я вот смотрю куски вашего кода и вижу дикую мешанину. Вы что сделать то хотите? |
03.05.2021, 11:37 | #311 |
Звичайна людина на Землі
Регистрация: 06.11.2011
Адрес: Україна, м.Київ, Печерський район, вул. Кіквідзе
Сообщений: 8,122
|
Свои посты удалил.
Не буду нагружать дикой мешаниной из класса кокпита Ки-43. Всем успехов! |
03.05.2021, 21:58 | #312 | |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Уважаемые коллеги, не стоит так переживательно реагировать на проблемы взаимонепонимания.
Василий я успел скачать Ваш класс кокпита и обязательно его разберу. Японцы для меня конечно трудноваты, однако работать с ними надо. Буду доделывать Ки-36 с максимально исторично-реалистичным кокпитом. Цитата:
Видимо это код кокпита А7-3А (читайте R-Z) с фрагментом кода прицела Ки-43. У R-Z в плане 3д франкен-прицел, представляющий смесь "альдис-а" с коллиматором, видимо ПАК-1. В процессе работы я убрал все лишние части ПАК. Может отсюда и проблемы. |
|
03.05.2021, 22:57 | #313 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Василию много благодарностей и плюс в карму! Класс нормально скомпилировался, пришлось только добавить правильную шапку. В игре тоже все работает. Ну почти все. При нажатии "ВКЛ/ВЫКЛ прицел" камера зависает как бы в воздухе. Однако во первых, я еще не переименовал меши, во вторых думаю поставить хук CAMERAAIM перед окуляром прицела.
Большое спасибо всем принявшим участие, надеюсь на Вашу помощь в дальнейшем. Уверен, это не последняя проблема которую предстоит решать... |
04.05.2021, 10:28 | #314 |
Модератор
Регистрация: 28.02.2007
Адрес: Тула, Россия
Сообщений: 1,823
|
В архиве меш прицела с хуком CAMERAAIM. Этот меш надо прописать в hier.him. В файле java код для управления. Этого должно быть достаточно чтобы реализовать перископический прицел.
|
05.05.2021, 09:48 | #315 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Асура спасибо! Скачал архив. Код и хиер открылись нормально, а в SuperReticle.msh какая то "абракадабра" вот фрагмент:
Код:
BS f “ w Л Ы [Common] [LOD] [Materials] [FaceGroups] [Vertices_Frame0] [MaterialMapping] [Faces] & - : H Ћ [ ™ Ћ n ' l + |
05.05.2021, 12:44 | #316 |
Местный
Регистрация: 15.09.2008
Сообщений: 2,190
|
Это потому, что меш в бинарном формате. Открой меш в мешконвертер или мешдампер и сохрани в виде текста
|
05.05.2021, 15:52 | #317 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Спасибо помогло.
|
05.05.2021, 21:15 | #318 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Обе системы и от Василия и от Асуры, рабочие. Первоначально как и хотел поставил камеру перед окуляром прицела. От этого варианта пришлось отказаться. Линию прицела перекрыли кольцо Тауненда и цилиндры мотора. Изменил имена мешей и код. В результате получилась как бы имитация прицела, но все равно с перекрытием линии огня. Сдвинул
всю конструкцию SuperReticle вперед, за кольцо. Теперь все нормально, осталось поправить положение прицела в кабине. |
14.05.2021, 23:39 | #319 |
Местный
Регистрация: 26.12.2013
Адрес: Донецьк Україна
Сообщений: 1,848
|
Привалило основной работы, так что работа с автожиром притормозилась.
Пока прицепил рычаг бомбосбрасывателя и провожу эксперименты с управлением радиатором. Рычаг бомбосбрасывателя срабатывает как то очень резко. Подскажите, если кто знает, как регулировать скорость нажатия гашеток управления огнем? А вот управление радиатором пока не работает... |
17.05.2021, 10:30 | #320 |
Модератор
Регистрация: 28.02.2007
Адрес: Тула, Россия
Сообщений: 1,823
|
плавность перемещения делается так (пример затемнения прицела Зеро):
private Variables setOld = new Variables(); private Variables setNew = new Variables(); в public boolean tick() setTmp = setOld; setOld = setNew; setNew = setTmp; if(cockpitDimControl) { if(setNew.dimPosition>0) setNew.dimPosition = setOld.dimPosition-0.05f; }else { if(setNew.dimPosition<1) setNew.dimPosition = setOld.dimPosition+0.05f; } в reflectWorldToInstruments mesh.chunkSetAngles("sunOFF", 0.0f, cvt(interp(setNew.dimPosition, setOld.dimPosition, delta), 0.0f, 1.0f, 0.0f, -77.0f), 0.0f); переменная setNew.dimPosition плавно изменяется за счет формулы setNew.dimPosition = setOld.dimPosition-0.05f в процедуре tick и мешь двигается плавно. меняя значение прироста переменной можно регулировать скорость перемещения. |
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
|
|