2DSTGを作っているのですが、座標は3Dで高低差があります。
それで、キャラクタの描画する座標を計算するために、
x * 100 / z + 120;
このような画面解像度240*240 Zは0-200(キャラクタの座標は画面の中心を0,0)用の
コードを使っているのですが、
Zに関係なく拡縮をしない背景(マップチップを並べる)と
地上にあるキャラクタとの
スクロールした時の誤差(当然、スクロール速度をZに応じて変えています)があって困っています。

背景もキャラクタにすることも考えましたが、
背景は拡縮を使わないので、上のコードが使えませんし、
(上のコードを使うとZが小さい時に背景同士が重なります)
並べるのが非常に手間がかかるで、
良い方法を探しているのですが、
キャラクタを背景をどのように作るのが「普通」なんでしょうか。
御願いします。