场景的状态包括位置、方向、缩放比例、物体朝向、颜色、可见性、透明度、相机等。

最常改变的是位置和方向。
    panda3d的默认坐标系:X向右,Y向前,Z向上。
    对象方向使用欧拉角度坐标;由航向(Heading|Yaw)、俯仰(Pitch)、滚动(Roll)构成。

这两句设置载入场景的位置和缩放比例;
    self.environ.setScale(0.25, 0.25, 0.25)
    self.environ.setPos(-8, 42, 0)
    缩放比例可分别设置X、Y、Z方向的;

self.taskMgr.add(self.spinCameraTask, "SpinCameraTask")
    这句应该是每帧改变相机的位置和方向;

spinCameraTask,这个是自己写的函数;python的语法看上去和C#和C++不同;

taskMgr,这个应是每帧调用的一个东西;

看一下手册;

Tasks are subroutines (functions) that you write that get called by Panda every frame or every specified amount of time. Event handlers are subroutines that you write that get called by Panda when certain special events occur. 
任务是一个你自己写的子路由函数,被Panda每帧调用,或者指定的时间到达调用。......;
Together, these two mechanisms enable you to update your Panda world between rendering steps.
这两个机制使你能更新你的Panda场景,在渲染的步骤之间。

这函数每帧被调用,改变相机的位置和方向;这样场景就在旋转;
def spinCameraTask(self, task):
        angleDegrees = task.time * 6.0
        angleRadians = angleDegrees * (pi / 180.0)
        self.camera.setPos(20 * sin(angleRadians), -20.0 * cos(angleRadians), 3)
        self.camera.setHpr(angleDegrees, 0, 0)
        return Task.cont

setPos,改变位置;
setHpr,改变方向;
setHpr的三个参数是:Yaw,Pitch,Roll;

self是啥我还没搞懂;可能是ShowBase类的一个实例;有时间学习一下python语法;
class MyApp(ShowBase):
    def __init__(self):
        ShowBase.__init__(self)

只载入场景;

载入自己的egg模型;位置、方向、缩放比例自己调整;

panda3d场景的主要状态相关推荐

  1. 初步了解Panda3D场景管理

    前面载入了场景:来理解一下代码: panda3d引擎中,所有对象抽象为节点.由节点构成树进行渲染. 节点的共同抽象基类为PandaNode. 节点组成的树的根通常是render. render是3D场 ...

  2. C#常用设计模式(Unity)——游戏场景的转换——状态模式(State)

    此文章原文来源于<设计模式与完美游戏开发>(蔡升达著),笔者只是在学习过程中受益颇多,从而进行了总结,有兴趣的读者可以去阅读原书. 1.场景的转换 当游戏比较复杂的时候,通常会设计多个场景 ...

  3. Java设计模式及应用场景之《状态模式》

    文章目录 一.状态模式定义 二.状态模式的结构和说明 三.状态模式示例 四.状态模式的优缺点 五.状态模式的应用场景及案例 一.状态模式定义 Allow an object to alter its ...

  4. Tcp头部字段,与ip层关系,与udp区别,使用场景,Tcp状态

    udp和tcp区别?为什么快,分清楚目的和手段 tcp是传输控制协议,是面向连接的协议,发送数据前需要先在发送方和接收方之间建立连接,tcp提供可靠的服务,传输的数据无差错.不重复.不丢失.且按序到达 ...

  5. 【设计模式】状态模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

    文章目录 一.状态模式简介 二.状态模式适用场景 三.状态模式优缺点 四.状态模式相关设计模式 五.状态模式代码示例 1.状态类父类 2.播放状态类 3.暂停状态类 4.快进状态类 5.停止状态类 6 ...

  6. 302状态码_http状态码是什么?301 302 404的SEO应用场景

    什么是HTTP状态码?简单的讲,就是用以表示网页服务器HTTP响应状态的3位数字代码.其中1xx表示临时响应,2xx表示成功处理了请求,3xx代表重定向,4xx表示请求错误,而5xx表示服务器错误.除 ...

  7. 状态设计模式(State Pattern)[论点:概念、相关角色、图示、示例代码、框架中的运用、适用场景]

    文章目录 概念 组成角色 相关图示 代码示例 框架中的应用 适用场景 概念 状态模式(State Pattern)是一种行为型设计模式,用于解决对象在不同状态下的行为问题.它允许一个对象在其内部状态改 ...

  8. 3D游戏物理开发引擎Panda3D基础

    文章目录 Panda3D场景安排 模型加载 渲染属性 任务 任务链 事件处理 主循环 视角 相机 阴影 环境灯 方向灯 控制 key-events DirectGui 碰撞检测 后续 Panda3D场 ...

  9. 高可用架构设计之无状态服务

    高可用架构设计之无状态服务 笑谈架构设计 事故的发生是量的积累的结果,任何事情都没有表面看起来那么简单,在软件运行的过程中,随着用户量的增加,不考虑高可用,迟早有一天会发生故障,不得事先考虑高可用设计 ...

最新文章

  1. c语言蓝桥十进制转十六进制,蓝桥杯 基础练习 十进制转十六进制
  2. 菜鸟网络 | 寄件业务的产品逻辑
  3. Linux文件系统和挂载点理解
  4. sql delete删除两个表_超强干货!SQL语法大合集
  5. PHP String
  6. java是如何简化成一行代码的?-----Lambda表达式初识
  7. IDEA中项目引入独立包打包失败问题解决(找不到包)
  8. tensorflow保存模型参数文件pb查看
  9. Google笔记本迈向烂笔头
  10. 使用doctrine的内存耗尽解决办法
  11. 1.4多媒体技术的发展历史
  12. Stripe国际支付简介及API对接
  13. 必应壁纸php,自动下载每日必应壁纸到指定文件夹php源码
  14. [已授权] 互联网定位技术小谈
  15. Work Like Alibaba系列分享回顾整理(含演讲幻灯片、视频):持续更新中
  16. 模拟电子电路基础——放大器理解与梳理
  17. 开根号的笔算算法图解_一个数的开根号怎么计算
  18. 深海的诱惑:如何成为一名潜水员
  19. 移动网络http请求不到数据,wifi下可以
  20. python极客项目编程pdf微盘下载_《Python极客项目编程 》——2.4 完整代码

热门文章

  1. 比bitblt和stretchblt效率更高的函数
  2. 记一次rc.local中python脚本无法运行的解决过程
  3. 启赟金融 CTO 马连浩:跨境支付系统架构
  4. Linux系统中的管道通信
  5. Camera效果测试-色彩准确性及饱和度测试
  6. 【TCP专题】TCP连接断开
  7. 纯前端,js导出页面为pdf
  8. CAN接受和发送失败的原因有哪些---之前调试MCP2515驱动时,数据一直发不出去,三个发送邮箱都被占满.至今未解决,读寄存器-总线错误
  9. 汇编语言实现简单的人机问答
  10. 计算机化工应用答案,计算机化工应用习题与解答.pdf