// Token: 0x06001A02 RID: 6658 RVA: 0x000E9EC8 File Offset: 0x000E80C8 public void amVectorClamp(AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, float min, float max) { pDst.x = AppMain.amClamp(pSrc.x, min, max); pDst.y = AppMain.amClamp(pSrc.y, min, max); pDst.z = AppMain.amClamp(pSrc.z, min, max); pDst.w = pSrc.w; }
public static void amEffectDraw(AppMain.AMS_AME_ECB ecb, AppMain.NNS_TEXLIST texlist, uint state) { ecb.drawState = state; if (AppMain._am_enable_draw == 0 || ecb.entry_num <= 0) { return; } if ((double)ecb.bounding.radius > 0.0) { AppMain.NNS_VECTOR4D pPos = new AppMain.NNS_VECTOR4D(); if (AppMain._amEffectFrustumCulling(pPos, AppMain._am_view_frustum, ecb.bounding) == 0) { return; } //AppMain.GlobalPool<AppMain.NNS_VECTOR4D>.Release(pPos); } for (AppMain.AMS_AME_ENTRY amsAmeEntry = ecb.entry_head; amsAmeEntry != null; amsAmeEntry = (AppMain.AMS_AME_ENTRY)amsAmeEntry.next) { AppMain.AMS_AME_RUNTIME runtime = amsAmeEntry.runtime; runtime.texlist = texlist; if (AppMain.AMD_AME_SUPER_CLASS_ID(runtime.node) == 512 && runtime.active_num != (short)0) { int num = AppMain._am_particle_func[(AppMain.AMD_AME_CLASS_ID(runtime.node) << 2) + 2]((object)runtime); } } }
private void amEffectTranslate(AppMain.AMS_AME_ECB ecb, AppMain.NNS_VECTOR4D translate) { AppMain.amVectorAdd(ecb.translate, translate); for (AppMain.AMS_AME_ENTRY amsAmeEntry = ecb.entry_head; amsAmeEntry != null; amsAmeEntry = (AppMain.AMS_AME_ENTRY)amsAmeEntry.next) { AppMain.AMS_AME_RUNTIME runtime = amsAmeEntry.runtime; if ((runtime.state & 8192) != 0 && ((int)runtime.node.flag & 67108864) == 0) { if (runtime.work != null) { AppMain.amVectorAdd(runtime.work.position, translate); } if ((int)runtime.work_num + (int)runtime.active_num != 0) { AppMain.AMS_AME_LIST next1 = runtime.work_head.next; for (AppMain.AMS_AME_LIST workTail = runtime.work_tail; next1 != workTail; next1 = next1.next) { AppMain.amVectorAdd(((AppMain.AMS_AME_RUNTIME_WORK)next1).position, translate); } AppMain.AMS_AME_LIST next2 = runtime.active_head.next; for (AppMain.AMS_AME_LIST activeTail = runtime.active_tail; next2 != activeTail; next2 = next2.next) { AppMain.amVectorAdd(((AppMain.AMS_AME_RUNTIME_WORK)next2).position, translate); } } } } }
public static void amQuatMultiVector( AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, ref AppMain.NNS_QUATERNION pQuat, AppMain.NNS_VECTOR4D?pVec) { AppMain.NNS_QUATERNION nnsQuaternion1 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION quat2 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION nnsQuaternion2 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION nnsQuaternion3 = new AppMain.NNS_QUATERNION(); AppMain.VEC4_COPY(ref nnsQuaternion3, (AppMain.NNS_VECTOR)pSrc); quat2.x = -pQuat.x; quat2.y = -pQuat.y; quat2.z = -pQuat.z; quat2.w = pQuat.w; AppMain.nnMultiplyQuaternion(ref nnsQuaternion2, ref pQuat, ref nnsQuaternion3); AppMain.nnMultiplyQuaternion(ref nnsQuaternion1, ref nnsQuaternion2, ref quat2); if (pVec == null) { AppMain.VEC4_COPY(ref pDst, ref nnsQuaternion1); } else { AppMain.NNS_VECTOR4D nnsVectoR4D = new AppMain.NNS_VECTOR4D(); AppMain.NNS_VECTOR4D pV2 = new AppMain.NNS_VECTOR4D(); AppMain.VEC4_COPY(ref nnsVectoR4D, ref nnsQuaternion1); AppMain.VEC4_COPY(ref pV2, (AppMain.NNS_VECTOR)pVec); AppMain.amVectorAdd(ref pDst, nnsVectoR4D, pV2); //AppMain.GlobalPool<AppMain.NNS_VECTOR4D>.Release(nnsVectoR4D); //AppMain.GlobalPool<AppMain.NNS_VECTOR4D>.Release(pV2); } }
public static void amQuatRotAxisToQuat( ref AppMain.NNS_QUATERNION pQuat, AppMain.NNS_VECTOR4D pVec, int angle) { AppMain.amQuatRotAxisToQuat(ref pQuat, pVec, AppMain.NNM_A32toRAD(angle)); }
public static void amVectorScale(ref AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, float sc) { pDst.x = pSrc.x * sc; pDst.y = pSrc.y * sc; pDst.z = pSrc.z * sc; pDst.w = pSrc.w; }
public static void amVectorOuterProduct( ref AppMain.NNS_VECTOR4D pDst, ref AppMain.SNNS_VECTOR4D pV1, ref AppMain.SNNS_VECTOR4D pV2) { AppMain.amVectorSet(ref pDst, (float)((double)pV1.y * (double)pV2.z - (double)pV1.z * (double)pV2.y), (float)((double)pV1.z * (double)pV2.x - (double)pV1.x * (double)pV2.z), (float)((double)pV1.x * (double)pV2.y - (double)pV1.y * (double)pV2.x)); }
public void amVectorTrunc(ref AppMain.AMS_VECTOR4I pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = (double)pSrc.x >= 0.0 ? (int)Math.Floor((double)pSrc.x) : (int)-Math.Floor(-(double)pSrc.x); pDst.y = (double)pSrc.y >= 0.0 ? (int)Math.Floor((double)pSrc.y) : (int)-Math.Floor(-(double)pSrc.y); pDst.z = (double)pSrc.z >= 0.0 ? (int)Math.Floor((double)pSrc.z) : (int)-Math.Floor(-(double)pSrc.z); pDst.w = (double)pSrc.w >= 0.0 ? (int)Math.Floor((double)pSrc.w) : (int)-Math.Floor(-(double)pSrc.w); }
public void amVectorFloor(ref AppMain.AMS_VECTOR4I pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = (int)Math.Floor((double)pSrc.x); pDst.y = (int)Math.Floor((double)pSrc.y); pDst.z = (int)Math.Floor((double)pSrc.z); pDst.w = (int)Math.Floor((double)pSrc.w); }
// Token: 0x06000F5D RID: 3933 RVA: 0x0008803C File Offset: 0x0008623C public void amQuatVectorToQuat(ref AppMain.NNS_QUATERNION pQuat, AppMain.NNS_VECTOR4D pV1, AppMain.NNS_VECTOR4D pV2) { AppMain.NNS_VECTOR nns_VECTOR = AppMain.GlobalPool <AppMain.NNS_VECTOR> .Alloc(); AppMain.NNS_VECTOR nns_VECTOR2 = AppMain.GlobalPool <AppMain.NNS_VECTOR> .Alloc(); AppMain.NNS_VECTOR nns_VECTOR3 = AppMain.GlobalPool <AppMain.NNS_VECTOR> .Alloc(); AppMain.NNS_VECTOR nns_VECTOR4 = AppMain.GlobalPool <AppMain.NNS_VECTOR> .Alloc(); AppMain.VEC3_COPY(nns_VECTOR, pV1); AppMain.VEC3_COPY(nns_VECTOR2, pV2); AppMain.nnAddVector(nns_VECTOR4, nns_VECTOR, nns_VECTOR2); float num = AppMain.nnDotProductVector(nns_VECTOR4, nns_VECTOR4); num = ( float )(1.0 / Math.Sqrt(( double )num)); AppMain.nnScaleVector(nns_VECTOR2, nns_VECTOR4, num); AppMain.nnCrossProductVector(nns_VECTOR3, nns_VECTOR, nns_VECTOR2); AppMain.VEC3_COPY(pQuat, nns_VECTOR3); pQuat.w = AppMain.nnDotProductVector(nns_VECTOR, nns_VECTOR2); AppMain.GlobalPool <AppMain.NNS_VECTOR> .Release(nns_VECTOR); AppMain.GlobalPool <AppMain.NNS_VECTOR> .Release(nns_VECTOR2); AppMain.GlobalPool <AppMain.NNS_VECTOR> .Release(nns_VECTOR3); AppMain.GlobalPool <AppMain.NNS_VECTOR> .Release(nns_VECTOR4); }
public void Assign(AppMain.NNS_VECTOR4D v) { this.x = v.x; this.y = v.y; this.z = v.z; this.w = v.w; }
// Token: 0x06000F64 RID: 3940 RVA: 0x0008825C File Offset: 0x0008645C public static void amQuatMultiVector(AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, ref AppMain.NNS_QUATERNION pQuat, AppMain.NNS_VECTOR4D pVec) { AppMain.NNS_QUATERNION nns_QUATERNION = default(AppMain.NNS_QUATERNION); AppMain.NNS_QUATERNION nns_QUATERNION2 = default(AppMain.NNS_QUATERNION); AppMain.NNS_QUATERNION nns_QUATERNION3 = default(AppMain.NNS_QUATERNION); AppMain.NNS_QUATERNION nns_QUATERNION4 = default(AppMain.NNS_QUATERNION); AppMain.VEC4_COPY(ref nns_QUATERNION4, pSrc); nns_QUATERNION2.x = -pQuat.x; nns_QUATERNION2.y = -pQuat.y; nns_QUATERNION2.z = -pQuat.z; nns_QUATERNION2.w = pQuat.w; AppMain.nnMultiplyQuaternion(ref nns_QUATERNION3, ref pQuat, ref nns_QUATERNION4); AppMain.nnMultiplyQuaternion(ref nns_QUATERNION, ref nns_QUATERNION3, ref nns_QUATERNION2); if (pVec == null) { AppMain.VEC4_COPY(pDst, ref nns_QUATERNION); return; } AppMain.NNS_VECTOR4D nns_VECTOR4D = AppMain.GlobalPool <AppMain.NNS_VECTOR4D> .Alloc(); AppMain.NNS_VECTOR4D nns_VECTOR4D2 = AppMain.GlobalPool <AppMain.NNS_VECTOR4D> .Alloc(); AppMain.VEC4_COPY(nns_VECTOR4D, ref nns_QUATERNION); AppMain.VEC4_COPY(nns_VECTOR4D2, pVec); AppMain.amVectorAdd(pDst, nns_VECTOR4D, nns_VECTOR4D2); AppMain.GlobalPool <AppMain.NNS_VECTOR4D> .Release(nns_VECTOR4D); AppMain.GlobalPool <AppMain.NNS_VECTOR4D> .Release(nns_VECTOR4D2); }
// Token: 0x06001A06 RID: 6662 RVA: 0x000EA020 File Offset: 0x000E8220 public void amVectorTrunc(AppMain.AMS_VECTOR4I pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = ( int )((pSrc.x >= 0f) ? Math.Floor(( double )pSrc.x) : (-( int )Math.Floor(( double )(-( double )pSrc.x)))); pDst.y = ( int )((pSrc.y >= 0f) ? Math.Floor(( double )pSrc.y) : (-( int )Math.Floor(( double )(-( double )pSrc.y)))); pDst.z = ( int )((pSrc.z >= 0f) ? Math.Floor(( double )pSrc.z) : (-( int )Math.Floor(( double )(-( double )pSrc.z)))); pDst.w = ( int )((pSrc.w >= 0f) ? Math.Floor(( double )pSrc.w) : (-( int )Math.Floor(( double )(-( double )pSrc.w)))); }
// Token: 0x06001A05 RID: 6661 RVA: 0x000E9FC0 File Offset: 0x000E81C0 public void amVectorCeil(AppMain.AMS_VECTOR4I pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = ( int )Math.Ceiling(( double )pSrc.x); pDst.y = ( int )Math.Ceiling(( double )pSrc.y); pDst.z = ( int )Math.Ceiling(( double )pSrc.z); pDst.w = ( int )Math.Ceiling(( double )pSrc.w); }
public static void VEC4_COPY(ref AppMain.NNS_VECTOR4D d_vec, AppMain.NNS_VECTOR s_vec) { d_vec.x = s_vec.x; d_vec.y = s_vec.y; d_vec.z = s_vec.z; d_vec.w = 0.0f; // TODO i don't know if this component should be copied }
public void amVectorIntToFloat(ref AppMain.NNS_VECTOR4D pDst, AppMain.AMS_VECTOR4I pSrc) { pDst.x = (float)pSrc.x; pDst.y = (float)pSrc.y; pDst.z = (float)pSrc.z; pDst.w = (float)pSrc.w; }
public static void VEC4_COPY(ref AppMain.NNS_VECTOR4D d_vec, ref AppMain.NNS_QUATERNION s_vec) { d_vec.x = s_vec.x; d_vec.y = s_vec.y; d_vec.z = s_vec.z; d_vec.w = s_vec.w; }
public static void amVectorInit(ref AppMain.NNS_VECTOR4D pVec) { pVec.x = 0.0f; pVec.y = 0.0f; pVec.z = 0.0f; pVec.w = 1f; }
public void amVectorInvert(ref AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = -pSrc.x; pDst.y = -pSrc.y; pDst.z = -pSrc.z; pDst.w = pSrc.w; }
public static void amVectorOne(ref AppMain.NNS_VECTOR4D pVec) { pVec.x = 1f; pVec.y = 1f; pVec.z = 1f; pVec.w = 1f; }
public void amVectorMin(ref AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, float val) { pDst.x = AppMain.amMin <float>(pSrc.x, val); pDst.y = AppMain.amMin <float>(pSrc.y, val); pDst.z = AppMain.amMin <float>(pSrc.z, val); pDst.w = pSrc.w; }
public static void amVectorSet(ref AppMain.NNS_VECTOR4D pDst, float x, float y, float z) { pDst.x = x; pDst.y = y; pDst.z = z; pDst.w = 1f; }
public static void amQuatMultiVector( ref AppMain.SNNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, ref AppMain.NNS_QUATERNION pQuat, AppMain.NNS_VECTOR4D?pVec) { AppMain.NNS_QUATERNION nnsQuaternion1 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION quat2 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION nnsQuaternion2 = new AppMain.NNS_QUATERNION(); AppMain.NNS_QUATERNION nnsQuaternion3 = new AppMain.NNS_QUATERNION(); AppMain.VEC4_COPY(ref nnsQuaternion3, (AppMain.NNS_VECTOR)pSrc); quat2.x = -pQuat.x; quat2.y = -pQuat.y; quat2.z = -pQuat.z; quat2.w = pQuat.w; AppMain.nnMultiplyQuaternion(ref nnsQuaternion2, ref pQuat, ref nnsQuaternion3); AppMain.nnMultiplyQuaternion(ref nnsQuaternion1, ref nnsQuaternion2, ref quat2); if (pVec == null) { AppMain.VEC4_COPY(ref pDst, ref nnsQuaternion1); } else { AppMain.SNNS_VECTOR4D snnsVectoR4D1 = new AppMain.SNNS_VECTOR4D(); AppMain.SNNS_VECTOR4D snnsVectoR4D2 = new AppMain.SNNS_VECTOR4D(); AppMain.VEC4_COPY(ref snnsVectoR4D1, ref nnsQuaternion1); AppMain.VEC4_COPY(ref snnsVectoR4D2, pVec.Value); AppMain.amVectorAdd(ref pDst, ref snnsVectoR4D1, ref snnsVectoR4D2); } }
public static void amVectorSet(AppMain.NNS_VECTOR4D pDst, float x, float y, float z, float w) { pDst.x = x; pDst.y = y; pDst.z = z; pDst.w = w; }
private static void readVector4(BinaryReader br, AppMain.NNS_VECTOR4D v) { v.x = br.ReadSingle(); v.y = br.ReadSingle(); v.z = br.ReadSingle(); v.w = br.ReadSingle(); }
public static void amVectorCopy(ref AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc) { pDst.x = pSrc.x; pDst.y = pSrc.y; pDst.z = pSrc.z; pDst.w = pSrc.w; }
public static void amEffectSetTranslate(AppMain.AMS_AME_ECB ecb, AppMain.NNS_VECTOR4D translate) { AppMain.amVectorCopy(ecb.translate, translate); for (AppMain.AMS_AME_ENTRY amsAmeEntry = ecb.entry_head; amsAmeEntry != null; amsAmeEntry = (AppMain.AMS_AME_ENTRY)amsAmeEntry.next) { AppMain.AMS_AME_RUNTIME runtime = amsAmeEntry.runtime; if ((runtime.state & 8192) != 0 && ((int)runtime.node.flag & 67108864) == 0) { if (runtime.work != null) { AppMain.amVectorAdd(runtime.work.position, ((AppMain.AMS_AME_NODE_TR_ROT)runtime.node).translate, translate); } if ((int)runtime.work_num + (int)runtime.active_num != 0) { AppMain.AMS_AME_RUNTIME_WORK next1 = (AppMain.AMS_AME_RUNTIME_WORK)runtime.work_head.next; for (AppMain.AMS_AME_RUNTIME_WORK workTail = (AppMain.AMS_AME_RUNTIME_WORK)runtime.work_tail; next1 != workTail; next1 = (AppMain.AMS_AME_RUNTIME_WORK)next1.next) { AppMain.amVectorAdd(next1.position, ((AppMain.AMS_AME_NODE_TR_ROT)runtime.node).translate, translate); } AppMain.AMS_AME_RUNTIME_WORK next2 = (AppMain.AMS_AME_RUNTIME_WORK)runtime.active_head.next; for (AppMain.AMS_AME_RUNTIME_WORK activeTail = (AppMain.AMS_AME_RUNTIME_WORK)runtime.active_tail; next2 != activeTail; next2 = (AppMain.AMS_AME_RUNTIME_WORK)next2.next) { AppMain.amVectorAdd(next2.position, ((AppMain.AMS_AME_NODE_TR_ROT)runtime.node).translate, translate); } } } } }
public static void VEC4_COPY(ref AppMain.SNNS_VECTOR4D d_vec, AppMain.NNS_VECTOR4D s_vec) { d_vec.x = s_vec.x; d_vec.y = s_vec.y; d_vec.z = s_vec.z; d_vec.w = s_vec.w; }
public static int _amEffectFrustumCulling( AppMain.NNS_VECTOR4D pPos, AppMain.AMS_FRUSTUM pFrustum, AppMain.AMS_AME_BOUNDING pBounding) { return(1); }
// Token: 0x06001A01 RID: 6657 RVA: 0x000E9E54 File Offset: 0x000E8054 public void amVectorClamp(AppMain.NNS_VECTOR4D pDst, AppMain.NNS_VECTOR4D pSrc, AppMain.NNS_VECTOR4D pMin, AppMain.NNS_VECTOR4D pMax) { pDst.x = AppMain.amClamp(pSrc.x, pMin.x, pMax.x); pDst.y = AppMain.amClamp(pSrc.y, pMin.y, pMax.y); pDst.z = AppMain.amClamp(pSrc.z, pMin.z, pMax.z); pDst.w = pSrc.w; }