Commit b3bd4ed3 authored by wuhao's avatar wuhao 🎯

asd

parent ad0596f4
Pipeline #6694 passed with stages
in 15 minutes and 41 seconds
......@@ -22,7 +22,7 @@
export default {
dev: {
"/vstp/": {
target: "http://jmcl.nangaoyun.com/vstp/",
target: "http://jmcl.nangaoyun.com/vstp/", // "http://jmcl.nangaoyun.com/vstp/",
changeOrigin: true,
// pathRewrite: { "^/vstp": "" },
},
......
......@@ -16,7 +16,6 @@ import "./index.less";
function Sphere({ position, CoordinatePoint, CurGongjianPoint }) {
const meshRef = useRef();
return (
<mesh
ref={meshRef}
......@@ -67,7 +66,6 @@ function PointViewer({ position, CoordinatePoint, CurGongjianPoint }) {
}}
>
<axesHelper args={[20]}></axesHelper>
<Gltf
src={"./model.glb"}
receiveShadow
......
......@@ -8,7 +8,7 @@
*
* Copyright (c) 2023 by ${git_name_email}, All Rights Reserved.
*/
import { Gltf, OrbitControls } from "@react-three/drei";
import { Gltf, OrbitControls, Stage } from "@react-three/drei";
import { Canvas, useLoader } from "@react-three/fiber";
import { memo } from "react";
import { FBXLoader } from "three/examples/jsm/loaders/FBXLoader";
......@@ -22,30 +22,55 @@ const ModelLoader = memo(({ url = "./glb/camera.obj" }) => {
const modelType = urlsplit[urlsplit.length - 1];
if (modelType === "gltf" || modelType === "glb") {
return <Gltf src={url} receiveShadow castShadow position={[0, 0, 0]} />;
return (
<Gltf
src={url}
receiveShadow
castShadow
position={[0, 0, 0]}
scale={20}
inject={
<meshPhysicalMaterial
color="white"
metalness={1} // 控制金属感,1 表示完全金属
roughness={0} // 控制光滑度,0 表示非常光滑
/>
}
/>
);
} else if (modelType === "obj") {
loader = useLoader(OBJLoader, url);
return (
<group>
<mesh receiveShadow castShadow scale={20}>
<primitive
object={loader.clone()}
receiveShadow
castShadow
position={[0, 0, 0]}
/>
</group>
<meshPhysicalMaterial
color="white"
metalness={1} // 控制金属感,1 表示完全金属
roughness={0} // 控制光滑度,0 表示非常光滑
/>
</mesh>
);
} else if (modelType === "fbx") {
loader = useLoader(FBXLoader, url);
return (
<group>
<mesh receiveShadow castShadow scale={20}>
<primitive
object={loader.scene.clone()}
receiveShadow
castShadow
position={[0, 0, 0]}
/>
</group>
<meshPhysicalMaterial
color="white"
metalness={1} // 控制金属感,1 表示完全金属
roughness={0} // 控制光滑度,0 表示非常光滑
/>
</mesh>
);
}
});
......@@ -54,11 +79,20 @@ function ThreeViewer({ url }) {
return (
<div className="bar-block-component">
<Canvas style={{ height: "600px", width: "100%" }} id={"sada"}>
<color attach="background" args={["#333"]} />
<ambientLight intensity={1} />
<color attach="background" args={["white"]} />
<OrbitControls></OrbitControls>
<pointLight position={[10, 10, 10]} intensity={1} />
<ModelLoader url={url} />
<Stage
intensity={0.5}
preset="rembrandt"
shadows={"contact"}
adjustCamera={1}
environment={{
path: "/",
files: "env.hdr",
}}
>
<ModelLoader url={url} />
</Stage>
</Canvas>
</div>
);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment