首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >统一3D主相机正片生成后无法工作

统一3D主相机正片生成后无法工作
EN

Stack Overflow用户
提问于 2022-08-25 03:27:43
回答 1查看 111关注 0票数 0

我是Unity3D的新手。

这是我的来源,很简单

代码语言:javascript
复制
public void persp_ortho_Btn_Clicked()
{
    if (!Camera_Controller.shared_instance.isOrthoCamera)
    {
        Camera_Controller.shared_instance.isOrthoCamera = true;
        Camera.main.orthographic = true;
        ui_camera.orthographic = true;
    }
    else
    {
        Camera_Controller.shared_instance.isOrthoCamera = false;
        Camera.main.orthographic = false;
        ui_camera.orthographic = false;
    }
}

当我在编辑器(游戏模拟窗口)中运行此代码时,它的工作原理如下所示:

但是,在构建和运行.exe之后,主摄像头不会改变为正相机,如下所示:

似乎主相机的“正射”特性在构建运行时也是真变假、假变真。但也许视图矩阵没有改变。

为什么会发生这种事,我该怎么解决呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-25 04:32:15

您的代码应该可以工作,除非有什么东西迫使相机保持相同的透视图。我无法就所提供的细节说出可能的原因。

只需测试出相机是否会切换没有if语句。像这样

代码语言:javascript
复制
public void persp_ortho_Btn_Clicked()
    {
        Camera.main.orthographic = !Camera.main.orthographic;
    }

如果是这样,那么条件检查就会出现一些问题。

或者,您可以尝试使用Unity来实现平稳过渡。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73481551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档