Page 1 of 2

Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 2:00 pm
by mandoman
I seem to be having difficulties with the Shaders on the Nuit Space Station. I could remove it from the game, but it adds so much to it, that I hate to. Here is what the Last Log says:

08:42:41.919 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.919 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.920 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.920 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.922 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.922 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.923 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.923 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.924 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.924 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.925 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.925 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.926 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.927 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.927 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.927 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.929 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.929 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.929 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.929 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.931 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.931 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.931 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.931 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.933 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.933 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.934 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.934 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.
08:42:41.935 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:7(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.936 [shader.load.fullModeFailed]: ----- WARNING: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment in full complexity mode, trying simple mode.
08:42:41.936 [shader.compile.failure]: ***** ERROR: GLSL vertex shader compilation failed for nuitshaderv.vertex:
>>>>> GLSL log:
0:8(9): preprocessor error: Redefinition of macro OO_TANGENT_ATTR



08:42:41.936 [shader.load.failed]: ***** ERROR: Could not build shader nuitshaderv.vertex/nuitshaderf.fragment.

Also, I'm getting Error warnings that seem to have to do with Thargoid ships, and missiles. I don't remember seeing this Error before today. This one froze my whole system, and I had to manually restart the computer. Any ideas?

08:42:41.938 [testscript.spawn]: Generated 1 medusa for testing purposes.
08:43:29.045 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58d8c0c250>{"Thargoid Warship" position: (8096.62, 11497, 345652) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:44:05.105 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58d8c0c250>{"Thargoid Warship" position: (6708.72, 8558.73, 340437) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:44:06.150 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58d8c0c250>{"Thargoid Warship" position: (6865.17, 8430.78, 340280) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:44:06.325 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58d8c0c250>{"Thargoid Warship" position: (6894.28, 8407.19, 340251) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:44:08.064 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58d8c0c250>{"Thargoid Warship" position: (7157.73, 8192.9, 339991) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:44:49.239 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58daaecf00>{"Thargoid Warship" position: (14534.3, 644.299, 342520) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.
08:45:05.977 [ship.missileLaunch.invalidPosition]: ***** ERROR: The missile_launch_position defines a position (0, 0, -20.5) behind the <ShipEntity 0x7f58daaecf00>{"Thargoid Warship" position: (11369, 3036.28, 341630) scanClass: CLASS_THARGOID status: STATUS_IN_FLIGHT}. In future versions such missiles may explode on launch because they have to travel through the ship.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 2:07 pm
by DaddyHoggy
I believe that is a hang-over from an old Griff Shader which Another_Commander takes the blame for that got disseminated (i.e. copied) to lots of other OXPs - you can safely remove/comment out the offending line in the shader code of the OXP.

EDIT: Can't help with the Thargoid error - although it would appear that, as the log reports, the eject position for missiles is no longer correct (I'm presuming for Thargoids, this means Thargons since Thargoids don't fire missiles - don't know why you would just start seeing the error now though)

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 2:35 pm
by Thargoid
Thargons are defined as missiles in the shipdata entry for the Thargoid ships, and launched by the normal AI mechanisms for firing a missile. This is why the error is being seen, as the launch position looks wrong (0,0,-20.5 is basically about 20m behind the ship, so the thargon would appear behind the mother facing (and moving) toward it - essentially shooting itself in the back).

The check was added in the recent version of trunk (1.75.1 or 1.75.2 I think, but not 100% sure). There's either an OXP there that needs updating or is of an older version to one that has been fixed. Which OXP is left as an exercise to the student (look in shipdata.plist files of OXPs which add Thargoid ships for one with that missile_launch position defined).

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 2:49 pm
by DaddyHoggy
My word - I'm on a roll today! :wink: In fact, I've been on a roll all week - may be the effects of super strong painkillers aren't all bad... :roll:

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 4:25 pm
by Killer Wolf
yep, as DH says, this is the same as the Werewolf prob. Mauiby mentioned it on page 4 of that thread.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 4:37 pm
by Eric Walch
Thargoid wrote:
The check was added in the recent version of trunk (1.75.1 or 1.75.2 I think, but not 100% sure). There's either an OXP there that needs updating or is of an older version to one that has been fixed. Which OXP is left as an exercise to the student (look in shipdata.plist files of OXPs which add Thargoid ships for one with that missile_launch position defined).
I thought is was already added in 1.75.0. It is a bug that was always part of Oolites own thargoid, therefor it is copied around in lots of oxp. Somehow the the eject position was used there up until 1.74. It was never a problem because thargoids were ejected at high speed and the first 0.25 seconds are missiles immune to collision. The tharglets already flew through the mother before collision detection started. :wink:
Anyhow, it is just a warning for oxp makers to update their work. The code is fixing the position itself to a generic one in the front when you see the message. It is unlikely that this warning is related to the crash.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 4:40 pm
by Capt. Murphy
The offending Thargoid model is the one in the Neolite pack.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 4:47 pm
by Fatleaf
Eric Walch wrote:
Thargoid wrote:
The check was added in the recent version of trunk (1.75.1 or 1.75.2 I think, but not 100% sure). There's either an OXP there that needs updating or is of an older version to one that has been fixed. Which OXP is left as an exercise to the student (look in shipdata.plist files of OXPs which add Thargoid ships for one with that missile_launch position defined).
I thought is was already added in 1.75.0. It is a bug that was always part of Oolites own thargoid, therefor it is copied around in lots of oxp. Somehow the the eject position was used there up until 1.74. It was never a problem because thargoids were ejected at high speed and the first 0.25 seconds are missiles immune to collision. The tharglets already flew through the mother before collision detection started. :wink:
Anyhow, it is just a warning for oxp makers to update their work. The code is fixing the position itself to a generic one in the front when you see the message. It is unlikely that this warning is related to the crash.
So, why do I nearly always get a crash to desktop with 1.75.2 ?
https://bb.oolite.space/viewtopic.php?f=3&t=9973

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 4:56 pm
by Mauiby de Fug
Eric's right, these popped up in 1.75. I did a sweep of my thargoid containing oxps here, after which a bunch of them were updated. Presumably you're using one of the ones which wasn't. It shouldn't be causing a crash. Change the launch position to the in the offending oxp and the log errors should disappear.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 6:32 pm
by mandoman
I believe that is a hang-over from an old Griff Shader which Another_Commander takes the blame for that got disseminated (i.e. copied) to lots of other OXPs - you can safely remove/comment out the offending line in the shader code of the OXP.
Assume that I'm senile, and an idiot (guilty on both counts). I looked into the Shaders Folder in the Nuit.oxp file and found all sorts of script that apparently relate to the Error. I don't know which is the offending line to which you refer. I realize that this statement is most likely agonizing to you, but the fact remains. I'm sorry. I guess what I'm trying to say is, to which line exactly are you referring? Thanks for the help.
The check was added in the recent version of trunk (1.75.1 or 1.75.2 I think, but not 100% sure). There's either an OXP there that needs updating or is of an older version to one that has been fixed. Which OXP is left as an exercise to the student (look in shipdata.plist files of OXPs which add Thargoid ships for one with that missile_launch position defined).
Ok, I took a look around, but so far the only thing I have found that looks anything like what you typed is this:

<string>thargon</string>
<key>missile_launch_position</key>
<string>0.0 0.0 -25.5</string>
<key>aft_eject_position</key>
<string>0.0 0.0 -25.5</string>
<key>model</key>

Of which I found more than one such string. This was located in the Galactic_Navy 5.3.0.oxp/Config/shipdata.plist. Is this to what you are referring?

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 6:57 pm
by mandoman
About the Shaders Error. I was looking at the griff_normalmap_ships.vertex, in the Shaders folder of the griff_normalmapped_adder.oxp, and it is identical to the Nuit/shaders/nuitshaderv.vertex, except the very beginning scripts, and the very last scripts. Those scripts are as follows:

At The Beginning:

#define OO_TANGENT_ATTR 1 // <---- Define OO_TANGENT_ATTR to 1 so that Oolite gives correct tangent data to shader.

At the end:

// gl_TexCoord used for the decal function in the fragment

gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0;

}

Knowing virtually nothing about scripting oxps, I have no idea if those differences are even a factor in the Error, but I'm just groping about in the dark (of my brain).

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 7:05 pm
by mandoman
Capt. Murphy wrote:
The offending Thargoid model is the one in the Neolite pack.
In which oxp is the Neolite pack included? I looked, but I can't seem to locate it. :?

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 7:21 pm
by DaddyHoggy

Code: Select all

#define OO_TANGENT_ATTR 1 // <---- Define OO_TANGENT_ATTR to 1 so that Oolite gives correct tangent data to shader.
Is the offending line and can be removed.

Code: Select all

<string>thargon</string>
<key>missile_launch_position</key>
<string>0.0 0.0 -25.5</string>
The Neolite ships are an OXP in their own right, if you've found the code above in Galactic Navy OXP then for you, that's the offending OXP. change that -25.5 to a positive number say 60.0 (the Thargoid is 180W x 40H x 180L) so this will start it 30 "units" inside the ship but the missile/thargon is invulnerable for the first 0.25s so will pass out the front of the ship before it has chance to detonate on its own launch craft.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 8:00 pm
by Eric Walch
Fatleaf wrote:
So, why do I nearly always get a crash to desktop with 1.75.2 ?
https://bb.oolite.space/viewtopic.php?f=3&t=9973
I assume it is just a coincidence. Something else is crashing your computer when jumping to interstellar space. But there are also a lot of thargoids added when entering interstellar space. I remember a certain shadered thargoid ship that always crashed my Oolite version when added to the system.
I am quite sure that that particular bug was solved in trunk, long ago. But there could be another, unknown cause.

Your log also contains the message: "Could not find a Thorgorn_Threat.oxp". You should have installed that also as one of the other oxps like to use it.
GalNavy also contains thargoids with wrong missile positions. I mailed the author about this, well before the 1.75 release. GalNavy.oxp is still waiting for a correct 1.75 compatible version so these warnings stop.

Re: Help With Nuit Shaders, and Thargoid Error

Posted: Thu Jun 09, 2011 8:27 pm
by mandoman
DaddyHoggy wrote:

Code: Select all

#define OO_TANGENT_ATTR 1 // <---- Define OO_TANGENT_ATTR to 1 so that Oolite gives correct tangent data to shader.
Is the offending line and can be removed.

Code: Select all

<string>thargon</string>
<key>missile_launch_position</key>
<string>0.0 0.0 -25.5</string>
The Neolite ships are an OXP in their own right, if you've found the code above in Galactic Navy OXP then for you, that's the offending OXP. change that -25.5 to a positive number say 60.0 (the Thargoid is 180W x 40H x 180L) so this will start it 30 "units" inside the ship but the missile/thargon is invulnerable for the first 0.25s so will pass out the front of the ship before it has chance to detonate on its own launch craft.
Done, and done. We'll see what happens. :)

I noticed that the aft_eject_position had the same number string (0.0.0.-25.5). Will that be a factor in what I have changed?