Page 1 of 1

Application: Deltaxus

Posted: 12 Aug 2017, 18:31
by Deltaxus
C/Python/Prolog (and medium level C++) programmer with background in formal software verification and fuzzing here. The Elder Scrolls games are my favorite games and I would like to help eventually re-implementing all the games up to Skyrim SE in an open source solution, even if it takes years. I don't have any significant skills with 3D rendering mechanisms and I probably wont ever get them, I do however have quit some in depth knowledge about the identification of bugs, performance related issues and reverse engineering in general. I need to familiarize myself with the OpenMW source code, so I wont be able to contribute meaningfully just yet.

Re: Application: Deltaxus

Posted: 12 Aug 2017, 18:56
by DestinedToDie
Welcome!

To better help you get started with OpenMW, we have a developer checklist for new applicants to go through. https://wiki.openmw.org/index.php?title ... ion_Wanted

I think we could certainly use some improvement in performance, I look forward to seeing any commits in that area. If you have questions about OpenMW code and how to implement stuff, feel free to ask developers, they usually give their insight.

Re: Application: Deltaxus

Posted: 12 Aug 2017, 19:59
by Deltaxus
Yes, I already took a look into the list, my development environment is set up as well. Right know, I just need to understand the engine's general working and coding convention used for this project, but I will certainly come back to ask if I find myself lost in the code ;-).

Re: Application: Deltaxus

Posted: 14 Aug 2017, 22:00
by Thunderforge
We've had several requests for greater code documentation. You may find it helpful to understand the code base by adding documentation as you go, and it helps others in the future.

Re: Application: Deltaxus

Posted: 15 Aug 2017, 19:36
by Deltaxus
Ironically I already started to add notes to several functions for myself. I usually do this when code isn't self explaining. I currently work myself through main.cpp, engine.cpp, mwbase and mwphysics. I should be able to properly rephrase my notes into docs for respective functions. Just a short side question: Are the checks for int/ float overflows implemented within the renderer ? For example:

Code: Select all

void CellRef::setScale(float scale) 
sets a value for a public member in the CellRef class. This function is at one point

Code: Select all

extensions.registerInstruction("setscale","f",opcodeSetScale,opcodeSetScaleExplicit); 
(components/compiler/extensions0.cpp)
registered as an opcode for mw scripts an thus can expect arbitrary user input data.
I haven't tracked it back to the renderer, can I expect that int/ float overflow is handled within the renderer ?