平面设计中低多边形设计有何风格亮点

 更新时间:2017年7月6日 23:23  点击:2345
平面设计中低多边形设计风格有何亮点?在浏览网页的时候,发现很多朋友喜欢低多边形设置的平面作品,低多边形风格的设计有哪些亮点呢?下面我们就来看看详细的教程,需要的朋友可以参考下

经常浏览Dribbble和Behance的朋友可能会注意到,最近“低面建模”设计风格异常火爆。除了网上的图形设计和动效设计,现实中的杂志、电视中这种风格也多有体现。这种设计风格的特点是低细节,面又多又小,高度渲染,经常配以柔光效果。

  其实,这种设计风格在早期计算机建模和动效中就被广泛采用,在快要被遗忘之时,突然又流行了一把。本文将探索这种低面建模设计风格的外观,展示一些低面建模设计案例。

  一、3D建模?低面建模?

  所有的3D建模都需要借力多边形。模型的多边形越多,模型越具细节。通常会柔化多边形的领教,让物体的外观看起来更和谐。

  低面建模设计不同,建模阶段使用的多边形较少,这样最后便会呈现一种简洁、抽象的效果。更注重渲染,而不是更注重柔化多边形。打造一种封闭、冷硬的感觉。

  然而,上述讲的这些并不意味着低面建模建模的作品分辨率低。低面建模设计使用了精致的渲染技术、光照效果、隐形效果,能够将简单的物体的实体性质高度还原。(只不过外形上有所欠缺)结果便是,低面建模设计有点像现实生活中的手工艺品,感觉很复古。

  低面建模设计代表人物是Timothy J.Reynolds。以及Jeremiah Shaw和Danny Jones的Tumblr站点Geo A  Day,他们都极力推崇低面建模设计美学用Jeremy Kool的The Paper Fox来形容这种设计风格,再贴切不过了(下图)。这个作品成为iOS上的一款交互性极高的应用。Jeremy  Kool模拟了折纸风格。加入了褶皱的纸质感,而边缘非常的纤细。

  喜欢低面建模设计的设计师似乎很不欣赏计算机建模,因为计算机建模有点太完美了,太客观了,毫无瑕疵。而现在的3D建模让人感觉太圆润了,他们追求那种粗糙的质感,因为设计师知道,再怎么模拟现实,设计出来的作品依然和现实差那么一“点”儿,他们觉得应该用设计去捕捉物体的本质,而不是努力的追求外观的模仿。

  当20世纪摄影出现时,有人觉得摄影应该去精确的抓取现实瞬间,这才是摄影追求的高度。但是艺术并不需要精确:艺术表达的是一种飘忽不定的感觉,而不是外观的完美再现。

  繁荣发展的数字艺术,经历了一代又一代对“逼真”风格的无限追求,可他们永远无法做到逼真,因为他们进行的是模拟,此时,有人厌倦了模拟,他们开始追求抽象化的表达。

  二、怎样进行低面建模设计?

  这里提供了一份简单教程,能够帮助快速实现低面建模风格,使用的软件是Cinema4D

  1、使用简单的实体创建对象,比如说球形、锥形。不必非常细腻,简单即可。

  2、Segment属性,勾选每段细分选项“Subdivision per Segment”,段数越多,物体的面越多。

  3、设置Phong属性——决定了物体的圆滑度,在Cinema4D中,可以删掉Phone标签,或者将Phone角度设置为0

  4、为了打造多边形效果,可以给模型加入变形,可以手动设置(通过拖移节点),也可以使用Displacer这种变形器。使用Noise  shader给每个顶点进行随机添加。可以增加或者减少变形量。

  5、给物体加入材质,定义材质时,可以加入隆起的映射,提供更棒的表面细节。也可以通过特殊的高光来打造。

  6、添加背景,添加天空

  7、添加光,微妙的光会让作品更带感。

  8、渲染对象,使用Global Illumination渲染设置,打造柔和光,添加Ambient Occlusion添加深度感和阴影。

本文主要介绍了C++的虚析构详解代码以及实例,有需要的朋友可以来参考一下。

C++的虚析构

  最近准备复习一遍所有的知识点,先从基础开始做起,用几分钟写个继承和析构吧。

  父类为A,子类为B,代码如下:

 

 代码如下复制代码

classA

{

 public:

 A()

 {

   cout <<"构造A"<< endl;

 }

 ~A()

 {

  cout <<"析构A"<< endl;

  }

}

classB:publicA

{

 public:

 B()

 {

 cout <<"构造B"<< endl;

 }

 ~B()

 {

 cout <<"析构B"<< endl;

 }

 

}

 

这个时候在main函数里,

定义一个A的对象,A a;运行输出结果为:构造A 析构A。

定义一个B的对象, B b;运行的输出结果为:构造B 析构B。

定义一个A的指针,指向B。A *P = new b; 运行输出结果为:构造A  构造B.这个时候很多人就容易出问题了,为啥没调用析构呢,这个也是经常遇到的问题,最简单也是最容易遗忘的。new出来的对象没有删,还有写一行代码  delete p;这个时候的运行输出结果为:构造A 构造B  析构A。又出现问题了,B的析构怎么没走,这个时候需要一用虚析构这个概念,虚析构的功能:父类的析构写成虚析构,在删除父类的指针的时候,可以删除子类的对象,避免内存泄漏。

具体操作就是把上面代码的第八行,前面加一个virtual。这个时候再运行输出结果为:构造A 构造B 析构B 析构A。注意这里也可以看出调用顺序,先走父类的构造,然后子类的构造。先走子类的析构,最后走父类的析构。 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文介绍了Lucene.Net实现搜索结果分类统计功能(中小型网站)的教程,非常实用,有兴趣的同学快来看看吧

最近我们搜易站内搜索系统的一个客户需要一个无限级分类和分类统计功能,要实现的效果如下:

但由于搜易站内搜索系统是基于Lucene.net 2.0开发的,并没有内置的分类统计搜索功能,于是乎只能自己实现了,考虑到客户的总数据量和搜索量不是特别大,于是用了简单有效的方式来实现:

因为涉及到分类的操作,但是每个站点的分类体系还是有些不一样的,本文主要提供思路和部分演示代码,给有需要的童鞋参考:

思路:

首先想到Lucene搜索出来的结果是一个Hits对象,Hits其实就是一个搜索结果文档的集合对象,那么遍历这个集合对象,跟给定的分类字段比对,存在就+1 。

代码示例:

 

 代码如下复制代码

Lucene.Net.Search.Hits hits = Searcher.Search(querystring) ;

inthcount = hits.Length();

Lucene.Net.Documents.Document doc =null;

for(inti = 0; i < hcount; i++)

{

  doc = hits.Doc(i);

  stringc1 = doc.GetField("Cate1").StringValue();

   //判断是否存在于给定的分类集合中,存在则加1

  if(parameter.Cate1Groups.ContainsKey(c1))

  {

    parameter.Cate1Groups[c1] = parameter.Cate1Groups[c1] + 1;

  }

  else

  {

    parameter.Cate1Groups.Add(c1, 1);

  }

}

 

适用场景:

这种实现方式比较适合中小型网站,在数据量和搜索量不大的情况下可用。

localstorage在浏览器的API有两个:localStorage和sessionStorage,存在于window对象中:localStorage对应window.localStorage,sessionStorage对应window.sessionStorage。 。接下来通过本文给大家介绍html5的localstorage的相关资料,需要的朋友可以参考下

HTML API

localstorage在浏览器的API有两个:localStorage和sessionStorage,存在于window对象中:localStorage对应window.localStorage,sessionStorage对应window.sessionStorage。 

localStorage和sessionStorage的区别主要是在于其生存期。

基本使用方法

 

 代码如下复制代码

localStorage.setItem("b","isaac");//设置b为"isaac"

var b = localStorage.getItem("b");//获取b的值,为"isaac"

var a = localStorage.key(0); // 获取第0个数据项的键名,此处即为“b”

localStorage.removeItem("b");//清除b的值

localStorage.clear();//清除当前域名下的所有localstorage数据

 

作用域

这里的作用域指的是:如何隔离开不同页面之间的localStorage(总不能在百度的页面上能读到腾讯的localStorage吧,哈哈哈)。

localStorage只要在相同的协议、相同的主机名、相同的端口下,就能读取/修改到同一份localStorage数据。

sessionStorage比localStorage更严苛一点,除了协议、主机名、端口外,还要求在同一窗口(也就是浏览器的标签页)下。

生存期

localStorage理论上来说是永久有效的,即不主动清空的话就不会消失,即使保存的数据超出了浏览器所规定的大小,也不会把旧数据清空而只会报错。但需要注意的是,在移动设备上的浏览器或各Native  App用到的WebView里,localStorage都是不可靠的,可能会因为各种原因(比如说退出App、网络切换、内存不足等原因)被清空。

sessionStorage的生存期顾名思义,类似于session,只要关闭浏览器(也包括浏览器的标签页),就会被清空。由于sessionStorage的生存期太短,因此应用场景很有限,但从另一方面来看,不容易出现异常情况,比较可靠。

数据结构

localstorage为标准的键值对(Key-Value,简称KV)数据类型,简单但也易扩展,只要以某种编码方式把想要存储进localstorage的对象给转化成字符串,就能轻松支持。举点例子:把对象转换成json字符串,就能让存储对象了;把图片转换成DataUrl(base64),就可以存储图片了。另外对于键值对数据类型来说,“键是唯一的”这个特性也是相当重要的,重复以同一个键来赋值的话,会覆盖上次的值。

过期时间

很遗憾,localstorage原生是不支持设置过期时间的,想要设置的话,就只能自己来封装一层逻辑来实现:

 

 代码如下复制代码

function set(key,value){

  var curtime = new Date().getTime();//获取当前时间

  localStorage.setItem(key,JSON.stringify({val:value,time:curtime}));//转换成json字符串序列

}

function get(key,exp)//exp是设置的过期时间

{

  var val = localStorage.getItem(key);//获取存储的元素

  var dataobj = JSON.parse(val);//解析出json对象

  if(new Date().getTime() - dataobj.time > exp)//如果当前时间-减去存储的元素在创建时候设置的时间 > 过期时间

  {

    console.log("expires");//提示过期

  }

  else{

    console.log("val="+dataobj.val);

  }

}

 

容量限制

目前业界基本上统一为5M,已经比cookies的4K要大很多了,省着点用吧骚年。

域名限制

由于浏览器的安全策略,localstorage是无法跨域的,也无法让子域名继承父域名的localstorage数据,这点跟cookies的差别还是蛮大的。

异常处理

localstorage在目前的浏览器环境来说,还不是完全稳定的,可能会出现各种各样的bug,一定要考虑好异常处理。我个人认为localstorage只是资源本地化的一种优化手段,不能因为使用localstorage就降低了程序的可用性,那种只是在console里输出点错误信息的异常处理我是绝对反对的。localstorage的异常处理一般用try/catch来捕获/处理异常。

如何测试用户当前浏览器是否支持localstorage

目前普遍的做法是检测window.localStorage是否存在,但某些浏览器存在bug,虽然“支持”localstorage,但在实际过程中甚至可能出现无法setItem()这样的低级bug。因此我建议,可以通过在try/catch结构里set/get一个测试数据有无出现异常来判断该浏览器是否支持localstorage,当然测试完后记得删掉测试数据哦。

浏览器兼容性

如何调试

在chrome开发者工具里的Resources - Local Storage面板以及Resources - Session Storage面板里,可以看到当前域名下的localstorage数据。

在ios设备上无法重复setItem()

另外,在iPhone/iPad上有时设置setItem()时会出现诡异的QUOTA_EXCEEDED_ERR错误,这时一般在setItem之前,先removeItem()就ok了。

相关插件推荐

store.js

mozilla/localForage

localFont

以上所述是小编给大家介绍的html5的localstorage详解,希望对大家有所帮助。在此也非常感谢大家对本网站的支持!

[!--infotagslink--]

相关文章

  • photoshop设计一幅大鱼海棠动画片海报制作实例教程

    今天小编在这里就来给各位photoshop的这一款软件的使用者们来说一说设计一幅大鱼海棠动画片海报制作的实例教程,各位想知道具体制作步骤的使用者们,那么各位就快来看看...2016-09-14
  • ps怎么制作倒影 ps设计倒影的方法

    ps软件是一款非常不错的图片处理软件,有着非常不错的使用效果。这次文章要给大家介绍的是ps怎么制作倒影,一起来看看设计倒影的方法。 用ps怎么做倒影最终效果&#819...2017-07-06
  • C语言程序设计第五版谭浩强课后答案(第二章答案)

    这篇文章主要介绍了C语言程序设计第五版谭浩强课后答案(第二章答案),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2021-04-02
  • Photoshop设计商务名片的5种常见思路分享

    今天小编在这里就来给Photoshop的这一款软件的使用者们来说下计商务名片的5种常见思路,各位想知道的使用者,那么下面就快来跟着小编一起看一看吧。 给各位Photosho...2016-09-14
  • WPF实现类似360安全卫士界面的程序源码分享

    最近在网上看到了新版的360安全卫士,感觉界面还不错,于是用WPF制作了一个,时间有限,一些具体的控件没有制作,用图片代替了。感兴趣的朋友一起跟着小编学习WPF实现类似360安全卫士界面的程序源码分享...2020-06-25
  • photoshop安卓和苹果界面设计之尺寸规范详解

    今天小编在这里就来给各位photoshop的这一款软件的使用者们来说下安卓和苹果的界面设计之尺寸规范,各位想知道的使用者们,那么下面就快来跟着小编一起看看吧。 给...2016-09-14
  • photoshop设计重影效果具体制作教程

    今天小编在这里就来给各位photoshop的这一款软件的使用者们来说一说设计重影效果具体的制作教程,各位想知道具体制作方法的软件使用者们,那么大家就来看下小编带来的教...2016-09-14
  • Illustrator结合photoshop设计可爱的卡通女厨师头像制作教程

    今天小编在这里就来给Illustrator的这一款软件的使用者们来说一说结合photoshop设计可爱的卡通女厨师头像的制作教程,各位想知道具体制作步骤的使用者们,那么下面就快来...2016-09-14
  • PS怎么设计T恤 PS制作T恤教程

    PS怎么设计T恤?很多人都想要在T恤上有自己喜欢的图案,那么自己设计T恤的图案是方法之一,本次为大家带来了详细的ps设计T恤教程,有兴趣的同学快来看看吧。 1、打开PS,新...2016-12-31
  • photoshop设计一张节约用水环保主题海报制作教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来详细的说说设计一张节约用水环保主题海报的制作教程,各位想知道具体制作方法的使用者们,那么下面就快来跟着小...2016-09-14
  • 基于Bootstrap实现Material Design风格表单插件 附源码下载

    Jquery Material Form Plugin是一款基于Bootstrap的Material Design风格的jQuery表单插件。这篇文章主要介绍了基于Bootstrap的Material Design风格表单插件附源码下载,感兴趣的朋友参考下...2016-04-19
  • c#实现51单片机频率计的代码分享(数字频率计设计)

    c#实现51单片机频率计的代码分享,大家参考使用吧...2020-06-25
  • photoshop设计蜘蛛侠纹理文字效果制作教程

    今天小编在这里就来给给各位photoshop的这一款软件的使用者们来说一说设计蜘蛛侠纹理文字效果的制作教程,各位想知道具体制作步骤的使用者们,那么大家下面就来跟着小编...2016-09-14
  • Photoshop设计武侠风毛笔字效果教程

    今天小编在这里就来给Photoshop的这一款软件的使用者们说下设计武侠风毛笔字效果得教程,各位想知道到底该怎么射击制作的使用者们,那么下面就快来跟着小编一起看一看制...2016-09-14
  • photoshop设计墨西哥亡灵节万寿菊文字特效制作教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来说一说设计墨西哥亡灵节万寿菊文字特效的制作教程,各位想知道具体制作方法的使用者,那么下面就快来跟着小编一...2016-09-14
  • b2c网站购物车的设计思路

    对于大部分B2C网站来说,购物车是网站的咽喉之地,订单是白花花的银子,所有银子都必然流经购物车,购物车不能有失。优秀的购物车设计至少需要完成两项使命:一是方便用户多买...2016-09-20
  • 网页设计中应防止的十个错误

      在许多糟糕的网站中,我们可以找出100条错误。现在,让我们将问题集中到最严重的10条上。仅仅防止这些错误,你的网站将会远好于你的众多的竞争对手。   1、没...2016-09-20
  • C#毕业设计之Winform零压健身房管理系统

    本文介绍了个人的《零压健身房管理系统(扁平化)》的基本流程和功能点的介绍,虚心接受各位的意见,欢迎在提出宝贵的意见,大家一起探讨学习...2021-09-26
  • 网站怎么设计 网站设计原则是什么

    网站的设计对很多用户是很重要的,网站不是盲目设计的,它需要遵循一些原则。下面文章就具体给大家介绍下网站设计的原则,喜欢的下面一起来看看。 大家都知道网站设计...2017-07-06
  • 使用分屏网页设计让手机网站建设更出彩的方法

    在设计手机网站时,只有不让网站设计显得不单调才能给用户不一样的感觉。下面这篇文章我们就来为大家介绍一,下使用分屏网页设计让手机网站建设更出彩的方法,有兴趣的朋友...2017-07-06