babylon.js实现三维矩阵火燃烧动画效果代码
代码语言:html
所属分类:动画
代码描述:babylon.js实现三维矩阵火燃烧动画效果代码
代码标签: babylon.js 三维 矩阵 火 燃烧 动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/babylon-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/pep.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
html,
body {
font: 1em sans-serif;
overflow: hidden;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
#renderCanvas {
width: 100%;
height: 100%;
touch-action: none;
}
a {
color: red;
}
#madeby {
position: fixed;
left: 0;
bottom: 0;
background-color: #3c3c3c;
color: white;
padding: 0.7rem;
border-top-right-radius: 8px;
}
</style>
</head>
<body>
<canvas id="renderCanvas" touch-action="none"></canvas>
<script>
/*
* References:
* - https://fabiensanglard.net/doom_fire_psx/index.html
* - https://github.com/filipedeschamps/doom-fire-algorithm
*/
const canvas = document.getElementById('renderCanvas')
const engine = new BABYLON.Engine(canvas, true)
const fireWidth = 40
const fireHeight = 40
const fireVoxels = []
const fireVoxelsIntensities = []
const firePallete = [
[7, 7, 7],
[31, 7, 7],
[47, 15, 7],
[71, 15, 7],
[87, 23, 7],
[103, 31, 7],
[119, 31, 7],
[143, 39, 7],
[159, 47, 7],
[175, 63, 7],
[191, 71, 7],
[199, 71, 7],
[223, 79, 7],
.........完整代码请登录后点击上方下载按钮下载查看
网友评论0