This question may be on-topic as a software design question, not a software development methods and practices question. The Help Center's on-topic page provides links to Wikipedia to define these terms - methods and practices refers to methods like sequential development, the agile methods, Lean, and CMMI and practices refers to things like Test Driven Development, Domain Driven Design. Software design includes identifying and selecting data structures and algorithms, along with a number of other topics.
Although it's likely to be on-topic, I'm not sure you'll get a good answer here because of the core audience of this community. We are "professionals, academics, and students working within the systems development life cycle who care about creating, delivering, and maintaining software responsibly". We may not have the depth of experience in graphics engines or mathematics to provide a suitable answer to your question. We maintain a list of other Stack Exchange sites that cover topics related to software development, some of which may be on-topic here but they provide a different set of experiences.
You should read their Help Center and search before asking a question, but it looks like Computer Science, Computational Science, and Signal Processing may be good fits for your question. Don't forget that cross-posting is not acceptable on the Stack Exchange network, so be sure to tailor your question for the specific audience to receive the best answers from that given community.