Если язык компилируемый то, например, писать свой растеризатор бессмысленно. Тогда надо определиться с выбором 3D библиотеки — OpenGl или DirectX. На OpenGl проще начать писать, но он не имеет объектного ориентированного Апи (возможно сейчас ситуация изменилась), поэтому придется писать по старинке. DirectX проще тем, что не надо заботиться о поддержке миллиона разных платформ (только Windows) и проще с разными расширениями видеокарт. Первым делом я бы посоветовал прочитать
3D FAQ, затем найти книгу по OpenGl или DirectX и уже начать что-то писать. Очень полезно хорошо разобраться в трехмерных матрицах и векторах. В принципе знания матричной и векторной алгебры мне было достаточно для решения практически любой задачи. Кстати можешь описать какая будет игра, я бы мог посоветовать тебе что нужно знать для ее создания — за время существования трехмерной графики (а это было до появления первых компьютеров) было придумано не так уж мало алгоритмов.