WPF 3D 贴图: 为你的二次元老婆们做个3D画廊

文章目录

    • WPF3D系列
    • 为你的二次元老婆们做个3D画廊

WPF3D系列

  • 💎WPF 3D初步|源码 新建一个立方体并调整视角
  • 相机控制:位置和视角的调节
    • 💎键盘控制|源码
    • 💎鼠标控制|源码
  • 💎为你的二次元老婆们做个3D画廊|源码
  • 💎用C#搓一个地球|源码
  • 💎基础光效💎给地球点颜色看看
  • 💎选中并挪动几何体

为你的二次元老婆们做个3D画廊

工程地址:二次元老婆们的画廊

接下来想做一个图廊,所以并没有必要用立方体,只需做一些“墙壁”就行了。
而在一个平面上建起另一个矩形的平面,实则非常容易,只需输入墙角的两点和高度就可以了,这对于写过正方体的人来说绝对是简单得很,无非是把四个点劈成两个三角形

private MeshGeometry3D MakeSurface(Point3D p0, Point3D p1, Point3D p2, Point3D p3)
{MeshGeometry3D mesh = new MeshGeometry3D();Point3D[] pts ={p0, p1, p2, p3};foreach (var pt in pts)mesh.Positions.Add(pt);foreach (var i in new int[6] { 0, 1, 2, 2, 3, 0 })mesh.TriangleIndices.Add(i);return mesh;
}

接下来可以像之前做正方体时那样,先做一个平的地面,然后在地面上放置一些正方体。

由于地面上的正方形要求垂直于地面,所以重载一下

private MeshGeometry3D MakeSurface(Point p0, Point p1, double high)
{return MakeSurface(new Point3D(p0.X, 0, p0.Y), new Point3D(p1.X, 0, p1.Y), new Point3D(p1.X, high, p1.Y), new Point3D(p0.X, high, p0.Y));
}

然后生成模型

在这里插入图片描述

代码为

private void DefineModel(Model3DGroup group)
{// Make the ground.const double wid = 10;MeshGeometry3D groundMesh = MakeSurface(new Point3D(-wid, 0, -wid),new Point3D(-wid, 0, +wid),new Point3D(+wid, 0, +wid),new Point3D(+wid, 0, -wid));DiffuseMaterial groundMaterial = new DiffuseMaterial(Brushes.DarkGray);GeometryModel3D groundModel = new GeometryModel3D(groundMesh, groundMaterial);group.Children.Add(groundModel);MaterialGroup gpMaterial;for (int x = -2; x <= 2; x += 2){for (int y = -2; y <= 2; y += 2){MeshGeometry3D mesh = MakeSurface(new Point(x, y), new Point(x, y + 1), 1);byte r = (byte)(128 + x * 50);byte g = (byte)(128 + y * 50);byte b = (byte)(128 + x * 50);Color color = Color.FromArgb(255, r, g, b);DiffuseMaterial material = new DiffuseMaterial(new SolidColorBrush(color));GeometryModel3D model = new GeometryModel3D(mesh, material);group.Children.Add(model);}}
}

接下来就是挂载贴图,结果大致如下

在这里插入图片描述

其方法也很简单,就是把material变成想要的图片,故而先把图像放在一个字符串数组里

static readonly string[] imgs = new string[9]
{"2d1.png","2d2.png","2d3.png","2d4.png","2d5.png","2d6.png","2d7.png","2d8.png","2d9.png"
};

接下来需要注意一点,图像本身需要一个坐标系,故而要把墙壁的代码改为

private MeshGeometry3D MakeSurface(Point p0, Point p1, double high, string uri = null)
{var mesh = MakeSurface(new Point3D(p0.X, 0, p0.Y), new Point3D(p1.X, 0, p1.Y), new Point3D(p1.X, high, p1.Y), new Point3D(p0.X, high, p0.Y));//这四个点代表图像上的坐标和图形中点的对应关系Point[] textureCoods = new Point[4]{new Point(0, 1),new Point(1, 1),new Point(1, 0),new Point(0, 0),};foreach (var pt  in textureCoods)mesh.TextureCoordinates.Add(pt);return mesh;
}

然后在生成正方形时,用图像取代颜色

ImageBrush imgBrush = new ImageBrush();
imgBrush.ImageSource = new BitmapImage(new Uri($"imgs//{imgs[k++]}", UriKind.Relative));MeshGeometry3D mesh = MakeSurface(new Point(x, y), new Point(x, y + 1), 1);GeometryModel3D model = new GeometryModel3D(mesh, new DiffuseMaterial(imgBrush));
group.Children.Add(model);

这样二次元妹纸就花在墙壁上啦。

当然,如果想象力丰富的话可以把墙壁连在一起像迷宫那种,肯定会有沉浸式的体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/72797.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于人工智能写作的发展以及看法

人工智能技术的快速发展使其应用领域得以扩展。从金融服务到小说创作&#xff0c;人工智能技术都占有了一席之地。 人工智能可以取代编辑吗&#xff1f;近日某公司开发了一个神码AI人工智能写作软件&#xff0c;据说现在人工智能可以理解超过85&#xff05;的内容。现在也可以…

换一种姿势阅读《人工智能简史》

2017 年 12 月&#xff0c;一本名为《人工智能简史》的图书发布。这个时间节点对于多数普通人的生活来说不算特别&#xff0c;但正是从前一年开始&#xff0c;人工智能在世界范围内开始进入了一段新的飞速发展期。2017 年和 2018 年也是中国 AI 企业的创业热潮期。 你说这个时代…

【转载】人工智能发展简史

网络查阅资料时候&#xff0c;看到的对人工智能发展简史&#xff0c;较为完整的讲述&#xff0c;故转载&#xff0c;仅供学习使用&#xff0c;原文链接&#xff1a;https://www.aminer.cn/ai-history。侵删。 人工智能到底是什么&#xff1f;通常来说&#xff0c;人工智能&…

人工智能再次超越人类,这次是阅读理解

在斯坦福大学举办的阅读理解比赛中&#xff0c;由微软和阿里巴巴分别独立开发的人工智能的得分都超过了人类。 在斯坦福大学举办的阅读理解比赛中&#xff0c;由微软和阿里巴巴分别独立开发的人工智能&#xff08;AI&#xff09;模型的得分均超过了人类。 这一人工智能里程碑是…

与AI合作穿越剧 编剧徐婷:AI脑洞大,但无法替代人类的情感表达

热门喜剧秀《周六夜现场》本季提前结束&#xff0c;美剧《亿万》最新第七季的更新搁浅&#xff0c;漫威新电影《新刀锋战士》暂停拍摄……美国影视娱乐行业的编剧们以抵制AI为由的大罢工&#xff0c;开始影响诸多作品的产出&#xff0c;据说造成了100亿美元的损失。 这场罢工已…

人工智能简史+电子版原文

自从学习了人工智能&#xff0c;对其的发展史产生了浓厚的兴趣&#xff0c;于是选择了《人工智能简史》这本书细细品味。下面将分享我看书时的一些体会。 人工智能的发展过程 我们想要理解人工智能&#xff0c;首先要知道这个名词从何而来。1956年达特茅斯会议被公认为人工智能…

AI:周志华老师文章《关于强人工智能》的阅读笔记以及感悟

AI&#xff1a;周志华老师文章《关于强人工智能》的阅读笔记以及感悟 导读 关于人工智能&#xff0c;长期存在两种不同的目标或者理念。一种是希望借鉴人类的智能行为&#xff0c;研制出更好的工具以减轻人类智力劳动&#xff0c;一般称为“弱人工智能”&#xff0c;类似…

《人工智能》之《绪论》习题解析

教材&#xff1a;《人工智能及其应用》&#xff0c;蔡自兴等&#xff0c;2016m清华大学出版社&#xff08;第5版&#xff09; 参考书&#xff1a; 对应同系列博客&#xff1a;《人工智能》之《绪论》 《人工智能》之《绪论》习题解析 1 什么是人工智能&#xff1f;试从学科…

解读人工智能续写名著的经典论

这段时间&#xff0c;人工智能“续写”名著的现象受到舆论聚焦。在人工智能的“作品”中&#xff0c;“林黛玉大战孙悟空”之类“脑洞大开”的情节纷纷亮相&#xff0c;大大超出了一般人的预料。面对《聊斋志异》里的经典故事&#xff0c;人工智能竟然创作出了 “蒲松龄笔下的狼…

论人工智能——写在当今人工智能突飞猛进的时代

人工智能是现代科技领域最为热门的研究方向之一&#xff0c;它是一种基于计算机技术和算法的智能体系&#xff0c;可以模拟人类的思维和判断能力&#xff0c;实现诸如语音识别、图像识别、自然语言处理等多项智能化任务。在日常生活中&#xff0c;人工智能的应用已经变得日益广…

股票交易接口软件服务涵盖范围有哪些?

通常所说的股票交易接口软件是指量化交易程序员们可以自行查询各大交易网站或交易所的股票历史数据及行情数据的工具&#xff0c;如&#xff1a;实时报价&#xff1b;走势图&#xff1b;价差图&#xff1b;基金、债券、期货、外汇、保险等各类金融数据查询等&#xff0c;进行数…

android官方转圈圈,android 弹出之后,一直转圈圈??

flutter version: version: 1.0.01 environment: sdk: ">2.1.0 <3.0.0" photo: 0.4.5 1 code: GestureDetector( child: Text(从相册选择), onTap: () async { var assetPathList await PhotoManager.getImageAsset(); _pickAsset(PickType.onlyImage, pathL…

爬取股票的历史数据(个股)

股票的历史数据爬取 爬取网易财经的个股历史数据 爬取链接&#xff1a;http://quotes.money.163.com/trade/lsjysj_000001.html? 先爬取股票的对应的代码 爬取股票代码的网站 https://www.banban.cn/gupiao/list_sh.html 代码 import requests,pymysql,re,datetime impo…

计算机技能高考600分,高三一模成绩530高考能上600分吗

有可能。很多地方在高三为了督促同学复习不松懈&#xff0c;一模二模的考试往往试题难度会比高考更高&#xff01;同时模拟考也往往不像高考评分那么工整、有详尽的步骤分&#xff0c;这就导致了学生考分的偏低。三模的试卷由于接近高考了&#xff0c;学生的状态好了&#xff0…

参加物理竞赛就是偏科严重?今天说说参加物理竞赛的好处和坏处!

前段时间&#xff0c;质心姐姐跟一些朋友聊起了竞赛这个话题。发现好多人都不知道竞赛能保送清北这个东东&#xff0c;或者就是略知一二~这让质心姐姐想来写一篇关于参加物理竞赛好处和坏处的文章。 先说说好处&#xff1a; 可以通过参加物理竞赛保送清北一般参加物理竞赛的流…

计算机竞赛满分学霸,数学英语满分!物理竞赛银牌!广西学霸杨晨煜730分的好成绩是怎样炼成的?...

6月23日中午&#xff0c; 2019年广西高考成绩出炉&#xff01;考生可以通过电话、短信、网站查询成绩 来&#xff0c;大家呼吸一下&#xff0c; 肃穆的一刻又来了 让各位家长和学生关注的 除了高考分数线 莫过于是谁的成绩能领跑全广西 南宁二中男生杨晨煜取得好成绩 (其中数学…

AP物理12近两年真题及知识点分布

2022年AP物理1和物理2的考试已经告一段落&#xff0c;CB官网也第一时间更新了这两个科目的北美FRQ真题。随着世界大部分地区恢复线下教学&#xff0c;本次考试也恢复到了传统的纸笔模式。然而&#xff0c;鉴于国内疫情形势严峻复杂&#xff0c;大陆部分地区都在近期宣布取消AP大…

2021高考理综单科成绩查询,2021全国各省市高考总分及各科分数 分值是多少

2021年高考7月7日至9日举行&#xff0c;全国大部分地区使用全国卷&#xff0c;江苏等地自主命题&#xff0c;上海、浙江、山东、海南等属于高考改革地区&#xff0c;不分文理。下面是2021全国各省市高考总分及各科分数&#xff0c;高考前可能会有微调&#xff0c;具体分数请以考…

NOC2021年测试卷1

一、单项选择题(共15题,每题3分,共45分) 1.下列应用不能体现人工智能技术的是()。 A、使用语音输入法输入文字B、使用OCR软件从图像中识别汉字C、某软件支持在线中英文互译D、某网站自动统计歌曲下载次数2.点击绿旗执行图中的脚本,若角色的坐标为 (25, 20) ,则说出的内…