Java中矩阵和向量的数组
我必须为某些课程(在Java中)实现一个渲染引擎(基于光线跟踪)。已经给了一些课程(但我可以随意改变我想要的一切)。有一些矩阵/向量类,它们对每个元素都使用单独的变量。对于4x4类型的矩阵,它看起来很难看,在我看来,它是反面向对象的。我会使用2D数组。但是Java自动执行绑定检查。如果我使用数组而不是单独的变量,这会严重影响性能吗?(我知道性能和Java并不总是匹配的,但它必须是Java的。)或者可以关闭此安全功能吗?Java确实会自动检查数组边界。这很好,不会对性能产生任何影响 我知道性能和Java并不总是匹配的,但必须匹配 在Java中 这是真的,也不是真的。Java确实被编译成字节码,然后被解释。然而,java有很多优化代码的特性,包括即时编译,所以在一些测试中,java比本机代码运行得更快Java中矩阵和向量的数组,java,arrays,rendering,raytracing,Java,Arrays,Rendering,Raytracing,我必须为某些课程(在Java中)实现一个渲染引擎(基于光线跟踪)。已经给了一些课程(但我可以随意改变我想要的一切)。有一些矩阵/向量类,它们对每个元素都使用单独的变量。对于4x4类型的矩阵,它看起来很难看,在我看来,它是反面向对象的。我会使用2D数组。但是Java自动执行绑定检查。如果我使用数组而不是单独的变量,这会严重影响性能吗?(我知道性能和Java并不总是匹配的,但它必须是Java的。)或者可以关闭此安全功能吗?Java确实会自动检查数组边界。这很好,不会对性能产生任何影响 我知道性能和J
最后一点:了解4x4矩阵类有16个独立的浮点成员字段(例如:float m02、m03、…),而不是单个float[4][4]数组。我想将单独的变量更改为一个2D数组。但是如果我想访问实例元素(I,j),Java会自动检查(I,j)是否在数组的边界内。因此,我的问题是,从长远来看,这是否会成为一个巨大的性能瓶颈(在具有+-1000000个顶点的模型上进行光线跟踪)。