babylonjs实现三维天空下草地上摇动的秋千效果代码
代码语言:html
所属分类:三维
代码描述:babylonjs实现三维天空下草地上摇动的秋千效果代码,点击秋千可摇动。
代码标签: babylonjs 三维 天空 草地 摇动 秋千
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
#renderCanvas {
position: absolute;
width: 100%;
height: 100%;
touch-action: none;
left: 0%;
right: 0%;
bottom: 0%;
top: 0%;
}
html,
body {
overflow: hidden;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
font-family: "Rajdhani", sans-serif;
color: white;
font-size: large;
}
a:link,
a:visited {
background-color: #f44336;
color: white;
padding: 14px 25px;
text-align: center;
text-decoration: none;
display: inline-block;
}
.container {
position: relative;
height: 100%;
width: 100%;
}
.header {
position: absolute;
left: 0;
right: 0;
top: 0;
padding-left: 10px;
text-align: center;
}
.footer {
position: absolute;
right: 0;
bottom: 0;
margin: 5px;
padding: 5px;
}
a:hover,
a:active {
background-color: red;
}
.center {
position: absolute;
background-color: #00bfa5;
left: 0%;
right: 0%;
bottom: 0%;
top: 0%;
margin: 10px;
padding: 10px;
}
#fps {
position: absolute;
background-color: black;
border: 2px solid red;
text-align: center;
font-size: 16px;
color: white;
top: 15px;
right: 10px;
width: 60px;
height: 20px;
}
</style>
<link href="https://fonts.googleapis.com/css2?family=Rajdhani:wght@500&display=swap" rel="stylesheet">
<!-- Babylon.js -->
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/dat.gui-min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/ammo.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/cannon.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/Oimo.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/earcut.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylon.5.2.0.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylonjs.materials.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylonjs.proceduralTextures.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylonjs.postProcess.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylonjs.loaders.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylonjs.serializers.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylon.gui.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylon.inspector.bundle.js"></script>
</head>
<body>
<div class="container">
<div class="container"><canvas id="renderCanvas" class="container" /></div>
<div class="footer"></div>
<div class="header">
</div>
</div>
<div id="fps">0</div>
<script >
const TEXTURE_FOLDER = "//repo.bfw.wiki/bfwrepo/images/three/sky/";
const GROUND_SIZE = 50;
const SKYBOX_SIZE = GROUND_SIZE * 10.0;
const nbPoints = 10;
const ropeLength = 35;
const radius = 0.2;
// States
var g_timer = null;
var shouldAnimateCamera = true;
let config = {
animateCamera: true
};
// Views
const divFps = document.getElementById("fps");
const canvas = document.getElementById("renderCanvas");
async function loadDemo() {
// Essential
const engine = new BABYLON.Engine(canvas, true, {
preserveDrawingBuffer: true,
stencil: true
});
const scene = new BABYLON.Scene(engine);
scene.clearColor = new BABYLON.Color3.Black();
await Ammo();
var plugin = new BABYLON.AmmoJSPlugin(false);
plugin.setTimeStep(1 / 10);
plugin.setFixedTimeStep(1 / 10);
plugin.setMaxSteps(1);
scene.enablePhysics(ne.........完整代码请登录后点击上方下载按钮下载查看
网友评论0