Piszę mały silnik RTS w C++ i chcę używać synchronizacji lockstep.Czy wszystkie operacje w stałych punktach C++ są deterministyczne?
Jako determinizm zmiennoprzecinkowy jest czymś, czego nawet nie mam nadziei osiągnąć, muszę użyć matematyki o stałym punkcie.
Jak deterministycznie (w porównaniu z różnymi kompilatorami i cpus) są typowe operacje na unsigned ints zdefiniowane?
Jestem szczególnie zainteresowany podziałem, ponieważ mogłoby to spowodować zaokrąglenia.
100% deterministyczne, a przynajmniej powinny być, jeśli prawdopodobnie procesor nie zostanie przerwany – Raxvan
@Raxvan ma rację. Właśnie tego banki używają do pieniędzy. Zazwyczaj są one skalowane o 1000, dzięki czemu mają 10 centów za zaokrąglanie rzeczy w górę/w dół. Pamiętaj, że operacje zostaną skrócone na końcu int. –
Czy nie istnieją gry rts używające matematyki zmiennoprzecinkowej w tym celu? – Karl