Show More
Commit Description:
Tweak calculations....
Commit Description:
Tweak calculations.
Prevent a negative number of visitors and separate visitors from donors.
References:
File last commit:
Show/Diff file:
Action:
FNA/src/FNAPlatform/README
25 lines | 1.4 KiB | text/plain | TextLexer
25 lines | 1.4 KiB | text/plain | TextLexer
r0 | This is FNAPlatform, the platform abstraction layer and implementations for FNA. | |||
r690 | The way FNA platforms are written is very simple: | |||
r0 | ||||
r690 | 1. Write implementations of the delegate types listed in FNAPlatform.cs | |||
2. Assign the new functions in the FNAPlatform static constructor | ||||
r0 | ||||
Determining platform backends at runtime allows us to have portability across | ||||
all targets with a single binary, which is convenient for targeting multiple | ||||
platforms as well as multiple backends for each platform all simultaneously. | ||||
r690 | That said, if you are adding a new platform, it is extremely likely that you | |||
will NOT be touching anything in FNA itself! The expectation is that 100% of | ||||
your work will end up in SDL2 and FNA3D. You _might_ add some OSVersion checks | ||||
to SDL2_FNAPlatform.cs, but that should be the only change in the managed code. | ||||
If for some reason you REALLY need a new FNAPlatform, the new platforms will add | ||||
code exclusively to this folder. Some interfaces may need to change for new | ||||
platforms, but changing the interface should be as simple as making the | ||||
modifications at the interface layer and fixing the code in both the XNA | ||||
reimplementation code as well as each platform backend file that depends on | ||||
those interfaces, all of which should throw errors at compile time right away, | ||||
regardless of your current target platform. | ||||
r0 | ||||
When submitting new platforms, please test ALL platforms and ALL backends! | ||||