Страница 21 из 31

Re: Свои изобретения в Railworks

Добавлено: 17 сен 2015, 09:00
Linx
Кусочек видео, с работой над рельефом у полотна и черновой рассадкой деревьев.


Набор ЖД знаков.

Добавлено: 21 дек 2015, 00:51
dison202
Изображение

Приветствую всех друзья! Итак, хочу представить всем свой набор ЖД знаков. На данный момент пак не финальный, по мере возможности планирую добавить еще несколько знаков. Все объекты в пакете максимально оптимизированы, все элементы имеют LOD-ы. В зимнее время на всех знаках есть снег.
Спойлер
* Пикетные столбики, два варианта - "Острый" и "Фигурный".
* Предельные столбики, два варианта - Круглая труба и бетонный столбик на квадратной основе.
* Километровые столбы, 9 вариантов.
* Бетонный "Блинчик", для опциональной установки по желанию на столбы.
* Габаритные ворота для ЖД переездов, двух вариантов. Ширина 9 метров, для установки на дорогу шириной 7 метров.
* Сигнальные знаки для снегоочистительных работ на путях.
* Знаки предупреждающие, таблички на столбе.
* Знаки для нейтральных вставок, навесные.
Спойлер
Изображение
Изображение
Изображение
Изображение

Спойлер
Для определения пакета в редакторе, необходимо выбрать автора DSM в списке доступного контента.

...Пикетные столбики...
Все пикетные столбы собраны в один общий элемент - "RU Километровый знак. Пикетные столбики". По клику на этот обьект, справа всплывет список всех столбиков, первые два варианта трогать не нужно, это маркера расстановки столбов с интервалом 100 метров.

Для начала установки, достаточно кликнуть по вышеуказанному элементу, и ничего не трогая проставить маркера. После в списке уже выбрать нужный столбик и ставить их напротив маркеров. После всех расстановок, маркера можно удалить. К сведению, выпадающий список имеет полосу прокрутки.

...Километровые столбы...
Ориентируясь на проставленные маркера, устанавливаем километровый столб после каждого 9-того пикета. Для ввода значения столба, кликните на нем два раза, справа в выпадающем списке вводите требуемые значения. Например, если вам надо установить на столбе значения первого километра с переходом на второй, вводим значение 12, для перехода с 9-ого на 10-ый - 910, и дальше по такому-же принципу - 2324, 99100, 223224, 9991000, 44454446.
::: СКАЧАТЬ ПАКЕТ :::


...


Re: Свои изобретения в Railworks

Добавлено: 21 дек 2015, 07:20
Anton_07RUS
Ну Артём, ну ОГРОМНОЕ СПАСИБО тебе мил человек.Давно о знаках таких мечтал.

Re: Свои изобретения в Railworks

Добавлено: 23 дек 2015, 22:08
Sergey1507
Итак! Скрины моего вагонного творчества

Сделал, наконец, основные детали тормозной системы (тормозной цилиндр, распределитель воздуха, трубопроводы, кран отключения распределителя воздуха от тормозной магистрали). Анимацию элементов не планирую.
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение

После конверта узрел косяки на некоторых гайках, думал, что сглаживание не поставил, оказалось, что UVs-развёртка неправильно сформировалась. По виду все было правильно (двойной шестиугольник), а треугольники оказались между собой сшиты неправильно (это почти поправил).

На очереди трубопроводы тормозной и разгрузочной магистралей, элементы системы разгрузки и концевые краны.
Мой старенький комп двенадцать моделей вагонов протягивает. По весу модель с лодами похожа на модель class47 которая появилась в Railworks3 (3,5 MB).

Re: Свои изобретения в Railworks

Добавлено: 24 дек 2015, 08:02
le Sandro
Думаю, на колеса можно побольше граней сделать, чтобы "квадратными" не были.

Re: Свои изобретения в Railworks

Добавлено: 28 дек 2015, 22:28
Linx
Продолжение работы над зеленкой. Готов перегон Мценск-Думчино. Надо доточить, наделать недостающих объектов и выезжать дальше. В остатке 24 километра... делаю по видео в меру возможностей, которые дает игра


Re: Свои изобретения в Railworks

Добавлено: 03 янв 2016, 21:04
радиомастер
Кто знает как пользоваться функциями по скрипту
GetWiperValue(pairIndex, aOrB)
SetWiperValue(pairIndex, aOrB, value)
GetWiperPairCount() ? Нужно для дворников для тэ10 , чтобы регулировать скорость работы дворников , но и капли чтобы не отставали . Короче как в бр155 .

Re: Свои изобретения в Railworks

Добавлено: 03 янв 2016, 22:39
Света
радиомастер, а можно сам оригинальный скрипт, где эти функции используются? А то у меня нет бр155.

Re: Свои изобретения в Railworks

Добавлено: 04 янв 2016, 11:03
радиомастер
Он там зашифрован (скомпилирован) , только и видно имена контролов и названия функций .

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 21:19
Света
Кто нибудь знает, существует какой-то аналог функции OnCustomSignalMessage, только чтобы работала и на поезде, управляемом ботом?

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 21:44
pROssO
Света, в первый раз слышу, что OnCustomSignalMessage не работает с AI. Есть обратная ей по смыслу OnConsistApproach (frontDistance, endDistance, speed), применяемая, в частности, для переездов, которая регулирует поведение объекта при приближении поезда, но вряд ли это по делу.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 21:54
Света
pROssO, тем не менее, это так :unknown: . Самый простой способ контроля - установить команду вывода окошка с сообщением внутри этой функции. Если состав управляется ботом, окошко не выводится, а часть скрипта внутри этой функции не исполняется. У меня половина дня ушла на поиски ошибок в коде, пока не стало очевидным, что часть его (внутри этой функции) просто игнорируется. Думаю, что как сообщения с кодом "15", так и функция OnCustomSignalMessage, инициируемая этими сообщениями, являются чисто пользовательскими.
pROssO писал(а):Есть обратная ей по смыслу OnConsistApproach (frontDistance, endDistance, speed), применяемая, в частности, для переездов, которая регулирует поведение объекта при приближении поезда, но вряд ли это по делу.
Нет, мне нужно именно передать на исполнение команду составу.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:05
pROssO
Света, Signal Message с ID 15 (Custom Message) в отличие от остальных, обрабатывается в Engine-скрипте (остальные - ядром сима). Несмотря на то, что сам я прежде этой функцией не пользовался, уверен, что AI должен его принимать.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:25
Света
pROssO писал(а):...Signal Message с ID 15 (Custom Message) в отличие от остальных, обрабатывается в Engine-скрипте...
Да, именно поэтому я его применяю.
Вот код передатчика:

Код: Выделить всё

--------------------------------------------------------------------------------------

CUSTOM_MESSAGE = 15
CALL_HORN = "0619010301"
--------------------------------------------------------------------------------------
-- INITIALISE
--
function Initialise ()
end

--------------------------------------------------------------------------------------
-- ON SIGNAL MESSAGE
function OnSignalMessage( message, parameter, direction, linkIndex )
	Call( "SendSignalMessage", message, parameter, -direction, 1, linkIndex )
end

-- ON CONSIST PASS
function OnConsistPass ( prevFrontDist, prevBackDist, frontDist, backDist, linkIndex )
	if ( frontDist > 0 and backDist < 0 ) or ( frontDist < 0 and backDist > 0 ) then
		if ( prevFrontDist > 0 and prevBackDist > 0 ) then
			Call( "SendConsistMessage", CUSTOM_MESSAGE, CALL_HORN )
		end
	end
end		
--------------------------------------------------------------------------------------
Работает четко, здесь нет диагностических сообщений, потому что у них уже нет необходимости и они удалены. А вот приемник:

Код: Выделить всё

function  OnCustomSignalMessage (ConsistMessage) 
		SysCall("ScenarioManager:ShowAlertMessageExt","","Signal",5,0)
	if ( ConsistMessage == "0619010301" ) then
		SysCall("ScenarioManager:ShowAlertMessageExt","","Zahvat",5,0)
	end
end -- OnCustomSignalMessage( message )
Даже если предположить, что при передаче сообщения есть ошибка, текст "Signal" всё равно должен выводится. На практике когда состав ведёт бот, сообщений нет; стоит захватить его мне и заново проехать по линкам передатчика, всё начинает работать.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:39
Cross
Света
к чему именно скрипт относится - к локомотиву, или к сигнализации? Есть кое-какие мысли, почему оно не работает. Только мне бы весь код увидеть. А точнее весь код на то, что именно нужно сделать

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:45
Света
Cross, это практически весь код и есть. Остальное к нему не относится. Передатчик - это линковый объект на путях, а приемник - пока что многострадальный ТЭМ2, в котором временно установлен приведенный код. Строка

Код: Выделить всё

SysCall("ScenarioManager:ShowAlertMessageExt","","Zahvat",5,0)
должна была после отладки замениться на команду, но увы...

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:52
Cross
Света
если речь об объекте на путях, то вот код на примере нейтральной вставки:
Здесь видно, что при пересечении, когда расстояние 0, происходит передача сигнала.

Код: Выделить всё

CUSTOM_MESSAGE = 15
function Initialise ()
--
end

function OnConsistPass ( prevFrontDist, prevBackDist, frontDist, backDist, linkIndex )
	if ( prevFrontDist * frontDist < 0 ) then
		Call( "SendConsistMessage", CUSTOM_MESSAGE, "NeutralSection" )
	end
end

function OnSignalMessage( message, parameter, direction, linkIndex )
	Call( "SendSignalMessage", message, parameter, -direction, 1, linkIndex )
end
Это полностью рабочий код, без глюков. Теперь мне нужен кусок кода из функции OnCustomSignalMessage локомотива. Полностью.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 22:58
Света
Cross, это практически тоже самое, что и у меня, с небольшим непринципиальным отличием. Проблем с передачей нет, там все четко, проблема именно в приеме, то есть когда бот управляет локомотивом, функция OnCustomSignalMessage локомотива не работает. Сейчас я ищу другие пути, но пока безуспешно.

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 23:03
Cross
Света
не работать может ещё и по той причине, если кусок кода, который связан с приёмом сигнала, находится в условии "если дать управление игроку" или if Call( "GetIsPlayer" ) == 1 then
Тогда, если в функции OnCustomSignalMessage есть условие if Call( "GetIsPlayer" ) == 0 then, может ничего не сработать. Проверь этот момент

Re: Свои изобретения в Railworks

Добавлено: 10 янв 2016, 23:18
Света
Cross, нет, такого условия нету. Всё именно так, как я привожу - функция начинается выводом диагностического сообщения, без условий. Это полный код по этой функции, без купюр:

Код: Выделить всё

function  OnCustomSignalMessage (ConsistMessage) 
      SysCall("ScenarioManager:ShowAlertMessageExt","","Signal",5,0)
   if ( ConsistMessage == "0619010301" ) then
      SysCall("ScenarioManager:ShowAlertMessageExt","","Zahvat",5,0)
   end
end -- OnCustomSignalMessage( message )
Это уже вынуждено, поначалу код был посложнее. Но из-за его отказа работать пришлось понемногу убирать условия, пока не стало очевидным, что дело не в ошибке. Поэтому это уже просто код отладки. При проследовании линка первое сообщение должно сразу выводиться. А потом, при выполнении условия, должно вывестись второе сообщение. Вернее, одно сразу за другим. На практике этого нет. Как я не пробую, эта функция мертва при АИ. Да и название её на это указывает.