![]() |
Om det här är ditt första besök, se till att gå till vår FAQ (finns även länk till FAQ i navigeringsmenyn ovan). Du kan behöva att registrera dig innan du kan posta (finns även en länk till registrering i navigeringsmenyn ovan). För att titta på inlägg, välj det forum som du vill besöka från de som är listade nedan. |
|
![]() |
|
Ämnesverktyg | Visningsalternativ |
|
![]() |
#1 | |
Medlem
Reg.datum: Feb 2013
Ort: Skåne
Inlägg: 134
|
![]() Citat:
![]() Kom nyss att tänka på att eftersom det är ganska svårt(omöjligt?) att se backspeglarna inifrån hytten så kanske man kunde fästa "head-out camera"-vyn så den tittar in i backspegeln. Men det är bara en tanke - det kan finnas bättre lösningar. ![]()
__________________
//Hamp3 ![]() SJ InterCity (X31K) |
|
![]() |
![]() |
![]() |
#2 |
Medlem
Reg.datum: May 2013
Ort: Skåne
Inlägg: 396
|
![]()
Den där interiören är INTE den som kommer laddas när man sitter och dricker kaffe i Bistron, bara så att ni är med på det. Det är grunden till den interiör man kommer se exteriört
![]() Två frågor: 1: Call(“*:ActivateNode”, “<Node Name>”, "<RN>") Gör denna funktion en del av geometrin synlig/osynlig? 2: Jag får inte animationerna att hända alls...och jag förstår inte varför. Tycker detta borde vara ett idiotsäkert skript?! Default value funkar bra, om den är satt till 1 är lamporna påslagna, vice versa med ett default value av 0. 03.jpg Provade även lite andra idéer men som inte riktigt heller gick vägen. Denna är överexplicit där jag försökte göra en "push button" som alltid ger reella hela tal och därav skapa en cykel för de olika lamp-lägena. PHP-kod:
__________________
X2000 LATEST BEST 5TH JUNE |
![]() |
![]() |
![]() |
#3 |
Medlem
Reg.datum: May 2013
Ort: Skåne
Inlägg: 396
|
![]()
Sagt det förr och säger det igen, är ingen höjdare på stolar. Håller på att piffa upp kupén och här är en lite bättre stol.
Ny till vänster, gammal till höger. ~2000polys/paret men kommer kunna trimma bort en hel del. 04.jpg
__________________
X2000 LATEST BEST 5TH JUNE |
![]() |
![]() |
![]() |
#4 | |
Medlem
Reg.datum: Jul 2010
Ort: Uppsala
Inlägg: 562
|
![]() Citat:
2. Vad är det för animationer du har för ljuset i strålkastarna? Normalt brukar dessa bara vara oanimerade objekt i 3dsmax med materialet TrainEmissiveGlow(passar bäst för helljus) och/eller addTex(halvljus) som du gömmer/visar beroende på läget av ljusreglaget. Utan att ha koll på x2:ans alla strålkastarlägen så gör jag ett skriptexempel(ej komplett och troligtvis med en hel del fel eftersom jag inte har möjlighet att testa med trial/errror metoden) som kanske kan ge några ideer. Halvljus nedre med objekt 1_128_HLHalvNedre Helljus nedre med objekt 1_128_HLHelNedre Halvljus övre med objekt 1_128_HLHalvOvre Helljus övre med objekt 1_128_HLHelOvre Slutljus med objekt 1_128_Slutljus Eftersom slutljuset ska slås på i en helt annan vagn så kommer man att behöva skicka ett meddelande från lok->manövervagn och vice versa när dessa ska vara av/på. Kod:
--GLOBALS animationTimer=0 animationONTime=0.9 --hur länge lampan lyser i animationcykeln(kan ej exakta värden) animationOFFTime=1.1 --hur länge lampan är släckt i animationcykeln animationON=false slutljus_msg_id=1000 slutljusON=false gInit=false --END GLOBALS function Initialise () Call("BeginUpdate") end --Vissa saker går ej att göra i bas Initialse funktionen då tex child-objekt i blueprinten ofta inte är registrerade vid den tidpunkten när skriptet körs. --Denna funktion körs första gången skriptet kör Update() och då kan man vara säker på att alla objekt/kontroller kan sättas som man vill function safeInitialise() LightsOFF() end function LightsOFF() Call("*:ActivateNode","HLHalvNedre",0) Call("*:ActivateNode","HLHelNedre",0) Call("*:ActivateNode","HLHalvOvre",0) Call("*:ActivateNode","HLHelOvre",0) Call("*:ActivateNode","Slutljus",0) Call("*:SendConsistMessage",slutljus_msg_id,0,1) --skicka meddelande om slutljus av till manövervagnen end function LightsON(hlcontrolpos) LightsOFF() --Resetta alla lampor innan den nya konfigurationen slås på if hlcontrolpos==1 then --halvljus ovre/undre Call("*:ActivateNode","HLHalvNedre",1) Call("*:ActivateNode","HLHalvOvre",1) Call("*:SendConsistMessage",slutljus_msg_id,1,1) elseif hlcontrolpos==2 then --halvljus övre, helljus nedre Call("*:ActivateNode","HLHelNedre",1) Call("*:ActivateNode","HLHalvOvre",1) Call("*:SendConsistMessage",slutljus_msg_id,1,1) elseif hlControlpos==3 then --helljus övre, helljus nedre Call("*:ActivateNode","HLHelNedre",1) Call("*:ActivateNode","HLHelOvre",1) Call("*:SendConsistMessage",slutljus_msg_id,1,1) --elseif.....för eventuella andra lägen end end function SlutljusAnimate(dtime) if not slutljusON then if animationON then Call("*:ActivateNode","Slutljus",0) animationON=false animationTime=0 end return end animationTimer=animationTimer+dtime if not animationON and animationTimer>animationOFFTime then Call("*:ActivateNode","Slutljus",1) animationON=true animationTime=0 elseif animationON and animationTime>animationONTime then Call("*:ActivateNode","Slutljus",0) animationON=false animationTime=0 end end function OnControlValueChange ( name, index, value) if Call( "*:ControlExists", name, index ) then if name=="LiveInjectorWater" then LightsON(value) end end Call( "*:SetControlValue", name, index, value) end function OnConsistMessage(msg,argument,direction) --Ta emot meddelande om slutljus i loket skickat från manövervagnen --Denna funktion måste även speglas i skriptet för manövervagnen så att slutljuset i tänds när man styr från loket if msg==slutljus_msg_id then if argument==0 then --slutljus av slutljusON=false else --slutljus på slutljusON=true end end Call("SendConsistMessage",msg,argument,direction ) --Skicka alla meddelanden vidare end function Update(dTime) if gInit==false then gInit=true safeInitialise() end SlutljusAnimate(dTime) end För att meddelanden ska kunna skickas genom tåget så måste även alla vagnar ett skript. Så i varje vagn behövs minst... Kod:
function OnConsistMessage(msg,argument,direction) Call("SendConsistMessage",msg,argument,direction ) --Skicka alla meddelanden vidare end P.S. X2:an ser helt grymt ut! Fantastiskt snyggt jobbat! D.S.
__________________
Försöker bygga Älvsjö godsbangård men svär mest över UVW mappning. Senast redigerad av Mawkish den 2014-06-29 klockan 13:01. |
|
![]() |
![]() |
![]() |
#5 |
Medlem
Reg.datum: May 2013
Ort: Skåne
Inlägg: 396
|
![]()
Det gör saken betydligt smidigare! Jag hade två "plattor" som skulle växla plats beroende på läge. Skall testa detta i eftermiddag.
![]()
__________________
X2000 LATEST BEST 5TH JUNE |
![]() |
![]() |
![]() |
#6 |
Medlem
Reg.datum: May 2013
Ort: Skåne
Inlägg: 396
|
![]()
Okej, såhär ser det ut nu. Det funkar betydligt bättre! Och trainemessive är verkligen natt och dag för lamporna. Tack för tipset Mawkish
![]() 1. Jag kör LogMate, men får inte ut något debugmeddelande från skriptet. Vart går print eller hur får jag meddelandena att dyka upp i LogMate? Försökte göra som i class390. 2.hlcontrolpos == 0 och hlcontrolpos == 1 funkar, hlcontrolpos == 2 eller högre ändrar inget. Lamporna stannar i konfigurationen som ges av lightsOFF(). Jag hade innan 6st konfigurationen men har bantat ner det till 3 för att debugga. Kontrolvärdet har: name: Headlights default value: 0 min value: 0 max value: 2 ..och en internal notched lever med 3 notches. 3. Funkar Activate Node på child objekt också, dvs kan jag använda det för att slå av/på ljuset? Fortsätter testa mig framåt ![]() PHP-kod:
05.jpg
__________________
X2000 LATEST BEST 5TH JUNE Senast redigerad av Kungsfisk den 2014-06-30 klockan 11:42. |
![]() |
![]() |
![]() |
#7 |
Medlem
Reg.datum: Jul 2011
Ort: Stockholm
Inlägg: 27
|
![]()
Det ser riktigt, riktigt bra ut.
|
![]() |
![]() |
![]() |
#8 | |
Medlem
Reg.datum: Jul 2010
Ort: Uppsala
Inlägg: 562
|
![]() Citat:
Kod:
--GLOBALS --lägg till logfile=nil --ENDGLOBALS function Initialise() --lägg till logfile = io.open("C:/RW_LOGS/scriptdebug.txt", "w"); end function DebugPrint(dbgmessage) if DEBUGGING then if logfile~=nil then logfile:write(os.date("%X")..": "..dbgmessage.."\n") logfile:flush() end end end 2. elseif hlControlpos==2 --> elseif hlcontrolpos==2 OBS. stort och litet "c" Jag skulle dock undvika kontrollnamnet Headlights som är någon slags semi-hårdkodad kontroll i TS med lägen "ljus av"/"ljus på"/"byt riktning" dvs 3 lägen som inte går att ändra vad jag vet. Gör hellre en egen kontroll med "LiveInjectorWater" med de lägen du behöver och koppla sedan ihop vad som händer i "Headlights" kontrollen och vice versa. Då får ett fungerande knapp i UI:t för grundljuset(av/på/ändra riktning) + trycka "L" för att finlira med ljusen. 3. För att visa/gömma childobjekt så används Call("Childnamn:Activate",1/0) så det går utmärkt att styra lamporna med detta och du kan tom ställa in olika parametrar på lamporna i skriptet med Call( "Headlight:SetRange", 60) --Headlight är här ett child objekt av typen spotlight Call( "Headlight:SetUmbraAngle", 25) Call( "Headlight:SetPenumbraAngle", 15)
__________________
Försöker bygga Älvsjö godsbangård men svär mest över UVW mappning. Senast redigerad av Mawkish den 2014-06-30 klockan 13:56. |
|
![]() |
![]() |
![]() |
#9 |
Medlem
Reg.datum: May 2013
Ort: Skåne
Inlägg: 396
|
![]()
Funkade direkt. Det är inte första gången man gör det misstaget...
LogMate funkar, hade fel filter som du skrev. Vad gött att man kan ändra delar av childobjekten via lua, då slipper man göra en för varje inställning. Skall definitivt utnyttja det. Stort tack, detta har fått mig på banan igen. Gött!
__________________
X2000 LATEST BEST 5TH JUNE |
![]() |
![]() |
![]() |
#10 |
Medlem
Reg.datum: Feb 2005
Ort: Karlstad, Sverige
Inlägg: 988
|
![]()
För att få igång felmeddelanden i LogMate måste mycket riktigt uppstartsparametrar sättas i Steam.
(eller via genväg om man inte har spelet via Steam) Nedan är hur det ser ut hos mig och det är ovärderlig hjälp för avlusning. Höger klicka på 'Train Simulator 2014' i vänstra panelen och välj 'Egenskaper', sedan knappen 'Ange startalternativ...' ps har någon sagt att modellen ser fantastisk ut? /æ |
![]() |
![]() |