p5.js案例(二):创意作品——USP消音版手枪模型

前言

根据老师的要求,创作一幅介绍自己的作品,可以是具象化地描绘形象,也可以是任何形式表现自己的兴趣、追求、特色、经历等。

由于最近比较喜欢一款FPS游戏,就做了里面的一把枪的模型。另外实现了一些动态效果和交互效果。

原图

在这里插入图片描述

编程语言

p5.js,编程环境p5.js在线编程

实现逻辑

将整个模型分为四个模块:消音器、枪管、连接座、弹夹。

就是简单的图形堆叠,仔细观察原图,使用ellipse(),rect(),triangle()等函数实现功能。具体的看我下面的

  1. 消音器
//绘制消音管的函数
function silenceTube(x,y){
   
  fill(30)
  rect(x+60,y+30,180,30)
  ellipse(x+240,y+45,10,30)
  ellipse(x+160,y+45,5,32)
  ellipse(x+80,y+45,5,32)
  rect(x+50,y+35,10,20)
}
  1. 枪管
//绘制枪管的函数
function barrel(x,y){
   
  fill(80)
  rect(x+220,y+25,20,10,2)
  rect(x+245,y+40,5,10)
  rect(x+65,y+33,180,28)
  triangle(x+65,y+28,x+60,y+61,x+65,y+61)
  rect(x+65,y+31,20,2)
  triangle(x+65,y+28,x+65,y+31,x+70,y+31)
  triangle(x+64,y+41,x+62,y+48,x+56,y+42)
  arc(x+60,y+42,8,8,PI,0)
  fill(200)
  rect(x+140,y+33,30,20)
}
  1. 连接座
//绘制连接座的函数
function connection(x,y){
   
  fill(80)
  rect(x+105,y+66,139,12)
  triangle(x+118,y+91,x+114,y+104,x+133,y+104)
  rect(x+128,y+100,30,4)
  triangle(x+164,y+79,x+158,y+104,x+164,y+104)
  triangle(x+164,y+79,x+164,y+104,x+170,y+79)
  fill(0)
  rect(x+60,y+61,185,5)
  rect(x+60,y+66,45,12)
  triangle(x+60,y+61,x
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值