Blender python oyun betiğini anlamak için, şu anda bir kürenin etrafından dolaşabileceği bir sahne oluşturmaya çalışıyorum, FPSController yapısını kullanarak this link. Herhangi açısı 180 derece üzerine çıkması kadar kabaca çalışır ve sonra süreksiz görünüyorBlender: Sphere etrafında gezinme
def main():
print("Started")
controller = bge.logic.getCurrentController()
me = controller.owner
distance, loc, glob = me.getVectTo((0,0,0))
grav = controller.actuators['Gravity']
strength = me['Gravity']
force = strength*(distance*distance)*glob
grav.force = force
try:
rot = Vector((0,0,-1)).rotation_difference(glob).to_matrix()
except Exception as E:
print(E)
rot = (0,0,0)
rotZ = me.orientation
me.orientation = rot*rotZ
controller.activate(grav)
main()
: yerçekimi ve FPSController oryantasyon için şu anda şöyle bir piton Kontrolör, inşa etmeye çalıştı. Bu, rotasyon_diferansı süreksiz olmaktan geliyor - blender documentation on Math Types & Utilities hiçbir şey söylemiyor, ve sürekli bir haritanın mümkün olup olmadığını görmek için kuaterniyonik gösterimler hakkında yeterince düşünmedim - ve sanırım yerel Z'ye ulaşmak için daha zarif bir yol var. oryantasyon sürekli olarak fareye bağlıdır, yerel X ve Y yönelimleri ise belirli bir vektör üzerinde sürekli olarak bağlıdır, fakat nasıl?
3B alanındaki döndürmeler oldukça zor olabilir. Benim düşünceme göre, zamanın sadece kuaterniyonları anlamaya koyması ve yerine bunları kullanması en kolay yoldur. – fluffels
Euler açıları (quaternions yerine) kullanıyorsanız, karşılaşabileceğiniz sorunlardan biri, bazı sorunlara neden olabilecek gimbal lock'tir (http://en.wikipedia.org/wiki/Gimbal_lock) – decden
Bunu denemek kolay mı? Blender kurulu olduğunda dışarıda? (Bir Blender uzmanı değil) – Gerard