directx8で3Dの座標はfloat型で扱わなければならない とあるのですが
座標表すだけならintで十分とおもうのですがなんでfloat型が採用されてるんですか?

座標のfloat型に合わせるためか
warning C4244: '=' : 'int' から 'float' に変換しました。データが失われているかもしれません
warning C4244: '=' : 'double' から 'float' に変換しました。データが失われているかもしれません

という警告が出まくります

座標に関わる計算するときに使う変数はすべてfloat型に統一しておいた方がいいのか
警告文が出てもプログラム自体は実行できるのでこのままほっといていいのか悩んでます