Skip to content

alexxxcs1/hellworldcss3d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

hellworldcss3d

第一次写自己的插件,主要功能是用css 3d的属性生成伪3d的模型。

之前从没接触过css 3d ,css做动画就是我的弱项,一直以为要玩3d就得用webGL之类的,直到后来看到淘宝造物节,被经验到了,花了2天时间去研究怎么写。

后来做完后我就想,为什么不写一个插件来生成简单的3d模型,就像Minecraft一样的世界。

然后就有了这个项目

代码还没优化,看起来软七八糟的,预计以后还会更新,如果你有兴趣也可以fork改一改

##用法

引入 hellworld3d.js

定义一个三维数组

var data=[
    [
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [0],[0],[0],[0],[0],[0],
        ],
        [
            [0],[0],[0],[0],[0],[0],
        ],
        [
            [0],[0],[0],[0],[0],[0],
        ],
    ],
    [
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [null],[null],[6],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
    ],
    [
        [
            [null],[null],[null],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[6],[null],
        ],
        [
            [null],[null],[6],[null],[null],[null],
        ],
        [
            [null],[null],[null],[6],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
    ],
    [
        [
            [6],[6],[6],[6],[6],[6],
        ],
        [
            [null],[6],[null],[null],[6],[null],
        ],
        [
            [null],[6],[6],[null],[null],[null],
        ],
        [
            [null],[6],[6],[6],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
        [
            [null],[null],[null],[null],[null],[null],
        ],
    ]
];

数字分别对应:

// 0 底部// 1 顶部// 2 左部// 3 右部// 4 前部// 5 后部// 6 立方体 //null 空

假设data[i][j][x]:

data.length = 三维世界的层级

data[i].length = 二维平面的长度

data[i][j].length = 二维平面的宽度

data[i][j][x] = 方块类型 // 0 底部// 1 顶部// 2 左部// 3 右部// 4 前部// 5 后部// 6 立方体 //null 空

初始化模型世界

var hw = new Hellworld(data,document.getElementById('View'));

渲染模型世界

hw.render();

##示例

http://packy.club/hellworldcss3d/

##TODOLIST

!增加平面材质渲染功能

About

一个css3d生成的伪3d模型插件

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published