Javascript 为什么可以';我是否将透视相机配置为具有三个J的实际尺寸?

Javascript 为什么可以';我是否将透视相机配置为具有三个J的实际尺寸?,javascript,html,css,three.js,Javascript,Html,Css,Three.js,我使用三个Js来可视化一辆车,但是我的透视相机有问题 我希望它看起来更真实:我只想看到前面,而不是后面。我明白了?哈哈 我试着改变很多,但我做不到 这是。我可以在您的代码中看到您正在使用鼠标滚轮更改FOV… 这就是你想做的吗? 我希望您将相机z位置更改为放大和缩小,而不是FOV 我建议你按照jscastro在评论中所说的去做,让你的相机视野为45,把你的相机移近一点,让你的滚动事件改变相机的位置,而不是视野 这是一个演示,您可以在其中更改摄影机的fov和z位置,以查看它们是如何交互的 var

我使用三个Js来可视化一辆车,但是我的透视相机有问题

我希望它看起来更真实:我只想看到前面,而不是后面。我明白了?哈哈

我试着改变很多,但我做不到


这是。

我可以在您的代码中看到您正在使用鼠标滚轮更改FOV…
这就是你想做的吗?
我希望您将相机z位置更改为放大和缩小,而不是FOV

我建议你按照jscastro在评论中所说的去做,让你的相机视野为45,把你的相机移近一点,让你的滚动事件改变相机的位置,而不是视野

这是一个演示,您可以在其中更改摄影机的fov和z位置,以查看它们是如何交互的

var摄影机、场景、渲染器、网格、材质、统计信息;
init();
制作动画();
函数init(){
//渲染器。
renderer=new THREE.WebGLRenderer();
//renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(window.innerWidth、window.innerHeight);
//将渲染器添加到页面
document.body.appendChild(renderer.doElement);
//创建相机。
摄像头=新的三个透视摄像头(70,window.innerWidth/window.innerHeight,11000);
摄像机位置z=400;
//创建场景。
场景=新的三个。场景();
//创造材料
材质=新的三个。MeshPhongMaterial();
//创建立方体并添加到场景中。
var geometry=新的三个.BoxGeometry(200200200);
网格=新的三个网格(几何体、材质);
场景。添加(网格);
//创建环境光并添加到场景中。
var light=新的三个。环境光(0x404040);//柔和的白光
场景。添加(灯光);
//创建平行光并添加到场景中。
var方向灯=新的三个方向灯(0xffffff);
方向灯。位置。设置(1,1,1);
场景。添加(方向光);
//添加用于调整窗口大小的侦听器。
addEventListener('resize',onWindowResize,false);
//添加dat.gui。
var gui=new dat.gui();
var fovgui=gui.add(摄像机,“fov”).onChange(函数)(newvalue){
camera.updateProjectMatrix();
}).name('camera.fov');
var posgui=gui.add(camera.position,“z”).name('camera.position.z');
添加({click:function()){
camera.fov=5;
摄像机位置z=5000;
camera.updateProjectMatrix();
updateDisplay();
posgui.updateDisplay();
}}名称('FOV:5 Z:5000');
添加({click:function()){
camera.fov=70;
摄像机位置z=400;
camera.updateProjectMatrix();
updateDisplay();
posgui.updateDisplay();
}}名称('FOV:70 Z:400');
添加({click:function()){
camera.fov=130;
摄像机位置z=190;
camera.updateProjectMatrix();
updateDisplay();
posgui.updateDisplay();
}}名称('FOV:130 Z:190');
}
函数animate(){
请求动画帧(动画);
网格旋转.x+=0.005;
网格旋转y+=0.01;
渲染器。渲染(场景、摄影机);
}
函数onWindowResize(){
camera.aspect=window.innerWidth/window.innerHeight;
camera.updateProjectMatrix();
renderer.setSize(window.innerWidth、window.innerHeight);
}
正文{
填充:0;
保证金:0;
}
帆布{
显示:块;
}


您是否尝试更改透视相机的视野范围
cameraPano=new THREE.PerspectiveCamera(45,window.innerWidth/window.innerHeight,11100)
@jscastro是的,我试过了,但它只能放大。你不能指望其他人在你的存储库中挖掘必要的代码。请在问题中包含相关代码。请参见此处,了解如何通过一个简单的示例提出一个有用的问题:看起来您的视野太小或汽车离摄像头太远。请注意,如果您需要代码方面的帮助,您需要在问题本身中加入最小回购。链接到github repo是堆栈溢出的主题。你不应该需要你的车型来回购这个问题。一个简单的框将产生相同的结果,我们可以看到您正在做什么,特别是如果您使用