February 14Feb 14 Supporter 1 hour ago, h3x3r said: Sure, but not sure how to rewrite it to noesis... If it's even possible... Haha, good luck! (found this in pluginshare.h: void (*rpgSmoothNormals)(smNrmParm_t *parms); but 'smooth' normals does not mean 'fix' them, I guess) (pmed you) edit: car1A, normals recalc car1A, normals, recalc, imported dae.zip edit2: fun fact, instead of using a script in blender you can simply press shift-n in edit mode, all faces selected. Same result as in the zip file. Edited February 14Feb 14 by shak-otay
February 19Feb 19 Supporter Hey, why noesis output floats like this? This is from print function 1.0 -0.0 -0.0 0.0 -0.0 1.0 0.0 0.0 -0.0 0.0 1.0 0.0 -0.8107157945632935 0.0 1.3126823902130127 0.0 0 -1.0 -0.0 1.5099580252808664e-07 0.0 -0.0 1.0 0.0 0.0 -1.5099580252808664e-07 0.0 -1.0 0.0 0.8107157945632935 0.0 1.3126823902130127 0.0 1 1.0 -0.0 -0.0 0.0 -0.0 1.0 0.0 0.0 -0.0 0.0 1.0 0.0 -0.8107159733772278 0.0 -1.342969536781311 0.0 2 -1.0 -0.0 1.5099580252808664e-07 0.0 -0.0 1.0 0.0 0.0 -1.5099580252808664e-07 0.0 -1.0 0.0 0.8107157945632935 0.0 -1.342969536781311 0.0 3 and not like this? This is 010 editor output which is correct. 1.000000 -0.000000 -0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -0.810716 0.000000 1.312682 0.000000 -1.000000 -0.000000 0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.810716 0.000000 1.312682 0.000000 1.000000 -0.000000 -0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -0.810716 0.000000 -1.342970 0.000000 -1.000000 -0.000000 0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.810716 0.000000 -1.342970 0.000000 Looks like rapi.rpgSetTransform deosn't like this output: 1.5099580252808664e-07 So now how to convert them to 010 editor format? Well if I print them with this in noesis: "{:f}".format() Then it's correct 1.000000 -0.000000 -0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 1.000000 0.000000 -0.810716 0.000000 1.312682 0.000000 -1.000000 -0.000000 0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 -1.000000 0.000000 0.810716 0.000000 1.312682 0.000000 1.000000 -0.000000 -0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 1.000000 0.000000 -0.810716 0.000000 -1.342970 0.000000 -1.000000 -0.000000 0.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 -0.000000 0.000000 -1.000000 0.000000 0.810716 0.000000 -1.342970 0.000000 Hell no! it's not. See first row 6th value from right, compared to the 010 output above. Noesis output 1.000000 and 010 editor 0.000000 I reading them as follow: float RwMat00,RwMat01,RwMat02,RwMat03, RwMat10,RwMat11,RwMat12,RwMat13, RwMat20,RwMat21,RwMat22,RwMat23, RwPosX,RwPosY,RwPosZ,RwPadding; Also if i use this Matrix4x4 in maya, it fails. So i must use 4x3 and then positions. In other cases it works as 4x4. So when i use rapi.rpgSetTransform the wheel dissapear. Based on the outputs it must be different ordering which causes the dissapearing EDiT. My bad... I have modified 010 template to print another set of indices. That's the reason of not matching outputs. Edited February 19Feb 19 by h3x3r
February 19Feb 19 Supporter Which file did you use? For SetTransform, Usually it's used like so: trans = NoeMat43((NoeVec3((-1, 0, 0)), NoeVec3((0, 1, 0)), NoeVec3((0, 0, 1)), NoeVec3((0, 0, 0)))) rapi.rpgSetTransform(trans) so a 4x3 matrix, how did you use it?
February 19Feb 19 Supporter 14 minutes ago, shak-otay said: so a 4x3 matrix, how did you use it? Like in PS2 script. But here it doesn't work.... Also another strange thing i see in inc_noesis.py there is NoeMat44 but when i feed it with 64 bytes buffer it still says invalid matrix I'll PM you script + file Edited February 19Feb 19 by h3x3r
February 19Feb 19 Supporter Got it! there must by flag: bigEnd = NOE_BIGENDIAN NoeMat43.fromBytes(matrix_data, bigEnd = NOE_BIGENDIAN).transpose()
February 19Feb 19 Supporter Haha, great. (Had just pmed you another try, using floats instead of bytes.) Edited February 19Feb 19 by shak-otay
February 19Feb 19 Supporter Just figure out that matrix 4x4 works, but you must convert it to 4x3 with this: .toMat43()
February 19Feb 19 Supporter That This line is in the script I sent you - commented out because it didn't work: edit: yeah, seems fromMat44() doesn't exist #mat43 = NoeMat43.fromMat44(RwBodyPartTransform) (I had used NoeVec4, of course and commented out the bs.read(4) lines for such in the loop for i in range(0, RwNumBodyParts):.) That's the reason why I used NoeVec3, and the transpose worked. (I handled RwBodyPartTransform only but I'll compare it to you initial version + your fix.) Edited February 20Feb 20 by shak-otay
February 19Feb 19 Supporter So here's for Revenge x360. Textures and normals are not applied. Don't ask why... h3x_burnout_revenge_x360_bgv.7z
February 20Feb 20 Supporter And here's Burnout 3 / Revenge xbox version script. Works for both bgv/btv files. h3x_burnout3_bgv_btv_xbox.py
Create an account or sign in to comment