文章编号:785时间:2024-02-19人气:
图形渲染技术在安卓游戏开发中扮演着至关重要的角色,它直接决定了游戏的视觉效果和用户体验。随着移动设备性能的不断提升和多核处理器的普及,安卓游戏的图形要求也越来越高,对图形渲染技术的需求与日俱增。
安卓游戏开发中常用的图形渲染技术包括2D渲染和3D渲染。2D渲染主要用于制作简单的界面元素和游戏场景,而3D渲染则可以呈现更加逼真的画面效果,使游戏更具沉浸感。在安卓设备上,常用的图形渲染API包括OpenGL ES和Vulkan。其中,OpenGL ES是一个跨平台的图形库,适用于开发2D和3D游戏,而Vulkan则是一个更加底层的API,可以提供更高的性能和更好的效率。
随着VR和AR等新兴技术的快速发展,安卓游戏开发领域对图形渲染技术的需求也在不断增加。VR和AR游戏对图形性能和渲染效果有着更高的要求,需要更加先进的图形渲染技术来实现。因此,安卓游戏开发者需要不断学习和掌握最新的图形渲染技术,以保持竞争力。
图形渲染技术的不断发展也为安卓游戏开发带来了新的机遇与挑战。随着移动设备的硬件性能不断提升,安卓游戏可以实现更加复杂的画面效果和更流畅的动画表现。同时,图形渲染技术的提升也意味着开发成本和时间的增加,开发团队需要花费更多的精力来优化和调试游戏的图形性能。
图形渲染技术在安卓游戏开发中具有重要意义,它直接影响着游戏的视觉表现和用户体验。随着移动设备性能的不断提升和新技术的不断涌现,安卓游戏开发者需要不断学习和掌握最新的图形渲染技术,以应对日益增长的图形需求和市场竞争。
图形渲染是将计算机生成的图形或图像经过算法处理,显示在物理设备上或者保存成文件的过程。它可以使图像更加真实、精细、美观。图形渲染可以应用在各个领域,如游戏开发、影视特效、工业设计等。
图形渲染技术涵盖了很多方面,包括光线追踪、着色器、纹理映射等等。其中,光线追踪是一种非常重要的图形渲染技术,能够真实地模拟光线在环境中的传播和反射,实现真实的光照效果。着色器则是控制图形的颜色和亮度,纹理映射则可以将复杂纹理贴在三维图形上,增加图形的现实感。
现在,图形渲染技术已经得到了广泛应用,许多行业都需要使用图形渲染来展示产品或者模拟真实情况。比如,在建筑行业中,设计师可以使用图形渲染技术来展示建筑的效果,帮助客户更好地理解建筑的结构和外观。而在游戏开发中,图形渲染则是一个不可或缺的环节,只有通过图形渲染技术,游戏才能实现更加真实的效果,让玩家更加享受游戏的乐趣。
1、绘画中的渲染在绘画中,渲染就是用水墨或淡的色彩烘染物象,以增强艺术效果。 2、计算机中的渲染将三维场景中的模型,按照设定好的环境、灯光、材质及渲染参数。 二维投影成数字图像的过程。 3、CG行业中的渲染简单都来说就是把抽象的模型变成屏幕上可以显示的二维图像,有些大文件的渲染仅一帧画面就需要12小时甚至更长,《大圣归来》就是我国渲染农场renderbus渲染的作品。 4、写作中的渲染在写作学中,作为写作思维的基本原理,渲染就是对文章主题、立意的展开性表达,即通过思维的展开,生成思想、生成材料、生成结构、生成语言,从而达到对文章主题、立意的强化——加浓、加深、加厚,最后感动、说服、征服读者。 扩展资料:概述定义渲染这个术语被用作“艺术家或作家对于场景的渲染”。 另外渲染也用于描述“计算视频编辑文件中的效果以生成最终视频输出的过程”。 简介渲染是三维计算机图形学中的最重要的研究课题之一,并且在实践领域它与其它技术密切相关。 在图形流水线中,渲染是最后一项重要步骤,通过它得到模型与动画最终显示效果。 自从二十世纪七十年代以来,随着计算机图形的不断复杂化,渲染也越来越成为一项重要的技术。 应用渲染的应用领域有:计算机与视频游戏、模拟、电影或者电视特效以及可视化设计,每一种应用都是特性与技术的综合考虑。 作为产品来看,现在已经有各种不同的渲染工具产品,有些集成到更大的建模或者动画包中,有些是独立产品,有些是开放源代码的产品。 从内部来看,渲染工具都是根据各种学科理论,经过仔细设计的程序,其中有:光学、视觉感知、数学以及软件开发。 分类三维计算机图形的预渲染(pre-rendering/offline rendering)或者实时渲染(real-time rendering/online rendering)的速度都非常慢。 预渲染的计算强度很大,通常是用于电影制作;实时渲染经常用于三维游戏,通常依靠带有三维硬件加速器的显卡完成这个过程。
3d渲染工作做什么3D渲染是一种计算机图形学技术,它可以将三维模型转化为二维图像或动画。 在许多领域中,如电影制作、建筑设计、工业设计、游戏开发等,3D渲染被广泛应用。 3D渲染工作通常涉及以下几个方面:建模:在3D建模软件中创建3D模型,这些模型可以是人物、场景、产品或其他物体。 建模师必须有一定的艺术技能和空间想象力,以便将2D概念转化为3D模型。 材质与纹理:为3D模型添加材质和纹理,以使其看起来更真实。 这可以通过3D纹理软件完成,材质和纹理可以是木头、石头、金属、玻璃等材质。 灯光与渲染:在3D软件中添加光源,并确定场景的光照条件,这可以影响最终的渲染结果。 渲染师必须了解如何控制光照效果,并选择合适的渲染算法,以获得高质量的渲染结果。 后期制作:对渲染结果进行后期制作,可以使用图像处理软件进行调整、颜色校正、特效添加等操作,以使最终结果更加完美。 总的来说,3D渲染工作的目的是利用计算机技术创建出高质量的3D图像或动画,用于各种领域的实际应用。
对于Android开发者来说,我们或多或少有了解过Android图像显示的知识点,刚刚学习Android开发的人会知道,在Actvity的onCreate方法中设置我们的View后,再经过onMeasure,onLayout,onDraw的流程,界面就显示出来了;对Android比较熟悉的开发者会知道,onDraw流程分为软件绘制和硬件绘制两种模式,软绘是通过调用Skia来操作,硬绘是通过调用Opengl ES来操作;对Android非常熟悉的开发者会知道绘制出来的图形数据最终都通过GraphiBuffer内共享内存传递给SurfaceFlinger去做图层混合,图层混合完成后将图形数据送到帧缓冲区,于是,图形就在我们的屏幕显示出来了。
但我们所知道的Activity或者是应用App界面的显示,只属于Android图形显示的一部分。同样可以在Android系统上展示图像的WebView,Flutter,或者是通过Unity开发的3D游戏,他们的界面又是如何被绘制和显现出来的呢?他们和我们所熟悉的Acitvity的界面显示又有什么异同点呢?我们可以不借助Activity的setView或者InflateView机制来实现在屏幕上显示出我们想要的界面吗?Android系统显示界面的方式又和IOS,或者Windows等系统有什么区别呢?……
去探究这些问题,比仅仅知道Acitvity的界面是如何显示出来更加的有价值,因为想要回答这些问题,就需要我们真正的掌握Android图像显示的底层原理,当我们掌握了底层的显示原理后,我们会发现WebView,Flutter或者未来会出现的各种新的图形显示技术,原来都是大同小异。
我会花三篇文章的篇幅,去深入的讲解Android图形显示的原理,OpenGL ES和Skia的绘制图像的方式,他们如何使用,以及他们在Android中的使用场景,如开机动画,Activity界面的软件绘制和硬件绘制,以及Flutter的界面绘制。那么,我们开始对Android图像显示原理的探索吧。
在讲解Android图像的显示之前,我会先讲一下屏幕图像的显示原理,毕竟我们图像,最终都是在手机屏幕上显示出来的,了解这一块的知识会让我们更容易的理解Android在图像显示上的机制。
图像显示的完整过程,分为下面几个阶段:
图像数据→CPU→显卡驱动→显卡(GPU)→显存(帧缓冲)→显示器
我详细介绍一下这几个阶段:
实际上显卡驱动,显卡和显存,包括数模转换模块都是属于显卡的模块。但为了能能详细的讲解经历的步骤,这里做了拆分。
当显存中有数据后,显示器又是怎么根据显存里面的数据来进行界面的显示的呢?这里以LCD液晶屏为例,显卡会将显存里的数据,按照从左至右,从上到下的顺序同步到屏幕上的每一个像素晶体管,一个像素晶体管就代表了一个像素。
如果我们的屏幕分辨率是1080x1920像素,就表示有1080x1920个像素像素晶体管,每个橡素点的颜色越丰富,描述这个像素的数据就越大,比如单色,每个像素只需要1bit,16色时,只需要4bit,256色时,就需要一个字节。那么1080x1920的分辨率的屏幕下,如果要以256色显示,显卡至少需要1080x1920个字节,也就是2M的大小。
刚刚说了,屏幕上的像素数据是从左到右,从上到下进行同步的,当这个过程完成了,就表示一帧绘制完成了,于是会开始下一帧的绘制,大部分的显示屏都是以60HZ的频率在屏幕上绘制完一帧,也就是16ms,并且每次绘制新的一帧时,都会发出一个垂直同步信号(VSync)。我们已经知道,图像数据都是放在帧缓冲中的,如果帧缓冲的缓冲区只有一个,那么屏幕在绘制这一帧的时候,图像数据便没法放入帧缓冲中了,只能等待这一帧绘制完成,在这种情况下,会有很大了效率问题。所以为了解决这一问题,帧缓冲引入两个缓冲区,即 双缓冲机制 。双缓冲虽然能解决效率问题,但会引入一个新的问题。当屏幕这一帧还没绘制完成时,即屏幕内容刚显示一半时,GPU 将新的一帧内容提交到帧缓冲区并把两个缓冲区进行交换后,显卡的像素同步模块就会把新的一帧数据的下半段显示到屏幕上,造成画面撕裂现象。
为了解决撕裂问题,就需要在收到垂直同步的时候才将帧缓冲中的两个缓冲区进行交换。Android4.1黄油计划中有一个优化点,就是CPU和GPU都只有收到垂直同步的信号时,才会开始进行图像的绘制操作,以及缓冲区的交换工作。
我们已经了解了屏幕图像显示的原理了,那么接着开始对Android图像显示的学习。
从上一章已经知道,计算机渲染界面必须要有GPU和帧缓冲。对于Linux系统来说,用户进程是没法直接操作帧缓冲的,但我们想要显示图像就必须要操作帧缓冲,所以Linux系统设计了一个虚拟设备文件,来作为对帧缓冲的映射,通过对该文件的I/O读写,我们就可以实现读写屏操作。帧缓冲对应的设备文件于/dev/fb* ,*表示对多个显示设备的支持, 设备号从0到31,如/dev/fb0就表示第一块显示屏,/dev/fb1就表示第二块显示屏。对于Android系统来说,默认使用/dev/fb0这一个设帧缓冲作为主屏幕,也就是我们的手机屏幕。我们Android手机屏幕上显示的图像数据,都是存储在/dev/fb0里,早期AndroidStuio中的DDMS工具实现截屏的原理就是直接读取/dev/fb0设备文件。
我们知道了手机屏幕上的图形数据都存储在帧缓冲中,所以Android手机图像界面的原理就是将我们的图像数据写入到帧缓冲内。那么,写入到帧缓冲的图像数据是怎么生成的,又是怎样加工的呢?图形数据是怎样送到帧缓冲去的,中间经历了哪些步骤和过程呢?了解了这几个问题,我们就了解了Android图形渲染的原理,那么带着这几个疑问,接着往下看。
想要知道图像数据是怎么产生的,我们需要知道 图像生产者 有哪些,他们分别是如何生成图像的,想要知道图像数据是怎么被消费的,我们需要知道 图像消费者 有哪些,他们又分别是如何消费图像的,想要知道中间经历的步骤和过程,我们需要知道 图像缓冲区 有哪些,他们是如何被创建,如何分配存储空间,又是如何将数据从生产者传递到消费者的,图像显示是一个很经典的消费者生产者的模型,只有对这个模型各个模块的击破,了解他们之间的流动关系,我们才能找到一条更容易的路径去掌握Android图形显示原理。我们看看谷歌提供的官方的架构图是怎样描述这一模型的模块及关系的。
如图, 图像的生产者 主要有MediaPlayer,CameraPrevier,NDK,OpenGl ES。MediaPlayer和Camera Previer是通过直接读取图像源来生成图像数据,NDK(Skia),OpenGL ES是通过自身的绘制能力生产的图像数据; 图像的消费者 有SurfaceFlinger,OpenGL ES Apps,以及HAL中的Hardware Composer。OpenGl ES既可以是图像的生产者,也可以是图像的消费者,所以它也放在了图像消费模块中; 图像缓冲区 主要有Surface以及前面提到帧缓冲。
Android图像显示的原理,会仅仅围绕 图像的生产者 , 图像的消费者 , 图像缓冲区 来展开,在这一篇文章中,我们先看看Android系统中的图像消费者。
SurfaceFlinger是Android系统中最重要的一个图像消费者,Activity绘制的界面图像,都会传递到SurfaceFlinger来,SurfaceFlinger的作用主要是接收图像缓冲区数据,然后交给HWComposer或者OpenGL做合成,合成完成后,SurfaceFlinger会把最终的数据提交给帧缓冲。
那么SurfaceFlinger是如何接收图像缓冲区的数据的呢?我们需要先了解一下Layer(层)的概念,一个Layer包含了一个Surface,一个Surface对应了一块图形缓冲区,而一个界面是由多个Surface组成的,所以他们会一一对应到SurfaceFlinger的Layer中。SurfaceFlinger通过读取Layer中的缓冲数据,就相当于读取界面上Surface的图像数据。Layer本质上是 Surface和SurfaceControl的组合 ,Surface是图形生产者和图像消费之间传递数据的缓冲区,SurfaceControl是Surface的控制类。
前面在屏幕图像显示原理中讲到,为了防止图像的撕裂,Android系统会在收到VSync垂直同步时才会开始处理图像的绘制和合成工作,而Surfaceflinger作为一个图像的消费者,同样也是遵守这一规则,所以我们通过源码来看看SurfaceFlinger是如何在这一规则下,消费图像数据的。
SurfaceFlinger专门创建了一个EventThread线程用来接收VSync。EventThread通过Socket将VSync信号同步到EventQueue中,而EventQueue又通过回调的方式,将VSync信号同步到SurfaceFlinger内。我们看一下源码实现。
上面主要是SurfaceFlinger初始化接收VSYNC垂直同步信号的操作,主要有这几个过程:
经过上面几个步骤,我们接收VSync的初始化工作都准备好了,EventThread也开始运转了,接着看一下EventThread的运转函数threadLoop做的事情。
threadLoop主要是两件事情
mConditon又是怎么接收VSync的呢?我们来看一下
可以看到,mCondition的VSync信号实际是DispSyncSource通过onVSyncEvent回调传入的,但是DispSyncSource的VSync又是怎么接收的呢?在上面讲到的SurfaceFlinger的init函数,在创建EventThread的实现中,我们可以发现答案—— mPrimaryDispSync 。
DispSyncSource的构造方法传入了mPrimaryDispSync,mPrimaryDispSync实际是一个DispSyncThread线程,我们看看这个线程的threadLoop方法
DispSyncThread的threadLoop会通过mPeriod来判断是否进行阻塞或者进行VSync回调,那么mPeriod又是哪儿被设置的呢?这里又回到SurfaceFlinger了,我们可以发现在SurfaceFlinger的 resyncToHardwareVsync 函数中有对mPeriod的赋值。
我们已经知道了VSync信号来自于HWCompser,但SurfaceFlinger并不会一直监听VSync信号,监听VSync的线程大部分时间都是休眠状态,只有需要做合成工作时,才会监听VSync,这样即保证图像合成的操作能和VSync保持一致,也节省了性能。SurfaceFlinger提供了一些主动注册监听VSync的操作函数。
可以看到,只有当SurfaceFlinger调用 signalTransaction 或者 signalLayerUpdate 函数时,才会注册监听VSync信号。那么signalTransaction或者signalLayerUpdate什么时候被调用呢?它可以由图像的生产者通知调用,也可以由SurfaceFlinger根据自己的逻辑来判断是否调用。
现在假设App层已经生成了我们界面的图像数据,并调用了 signalTransaction 通知SurfaceFlinger注册监听VSync,于是VSync信号便会传递到了MessageQueue中了,我们接着看看MessageQueue又是怎么处理VSync的吧。
MessageQueue收到VSync信号后,最终回调到了SurfaceFlinger的 onMessageReceived 中,当SurfaceFlinger接收到VSync后,便开始以一个图像消费者的角色来处理图像数据了。我们接着看SurfaceFlinger是以什么样的方式消费图像数据的。
VSync信号最终被SurfaceFlinger的onMessageReceived函数中的INVALIDATE模块处理。
INVALIDATE的流程如下:
handleMessageTransaction的处理比较长,处理的事情也比较多,它主要做的事情有这些
handleMessageRefresh函数,便是SurfaceFlinger真正处理图层合成的地方,它主要下面五个步骤。
我会详细介绍每一个步骤的具体操作
合成前预处理会判断Layer是否发生变化,当Layer中有新的待处理的Buffer帧(mQueuedFrames>0),或者mSidebandStreamChanged发生了变化, 都表示Layer发生了变化,如果变化了,就调用signalLayerUpdate,注册下一次的VSync信号。如果Layer没有发生变化,便只会做这一次的合成工作,不会注册下一次VSync了。
重建Layer栈会遍历Layer,计算和存储每个Layer的脏区, 然后和当前的显示设备进行比较,看Layer的脏区域是否在显示设备的显示区域内,如果在显示区域内的话说明该layer是需要绘制的,则更新到显示设备的VisibleLayersSortedByZ列表中,等待被合成
rebuildLayerStacks中最重要的一步是 computeVisibleRegions ,也就是对Layer的变化区域和非透明区域的计算,为什么要对变化区域做计算呢?我们先看看SurfaceFlinger对界面显示区域的分类:
还是以这张图做例子,可以看到我们的状态栏是半透明的,所以它是一个opaqueRegion区域,微信界面和虚拟按键是完全不透明的,他是一个visibleRegion,除了这三个Layer外,还有一个我们看不到的Layer——壁纸,它被上方visibleRegion遮挡了,所以是coveredRegion
对这几个区域的概念清楚了,我们就可以去了解computeVisibleRegions中做的事情了,它主要是这几步操作:
着色器是计算机图形学中的一种程序,用于在图形渲染过程中对图像进行着色和渲染。
着色器可以控制光照、材质、纹理、阴影等图像效果,使得渲染出的图像更加逼真和细致。着色器通常由图形处理单元(GPU)执行,它们是在图形渲染管线的不同阶段运行的小型程序。着色器可以分为顶点着色器(Vertex Shader)和片元着色器(Fragment Shader)两种类型。
着色器替代了传统的固定渲染管线,可以实现3D图形学计算中的相关计算,由于其可编辑性,可以实现各种各样的图像效果而不用受显卡的固定渲染管线限制。着色器在游戏开发、电影特效、虚拟现实等领域都有广泛的应用,可以实现各种复杂的图像效果和视觉呈现。
常见的着色器分类:
1、顶点着色器(Vertex Shader):顶点着色器主要用于对模型的顶点进行变换和处理。它接收输入的顶点数据,如位置、法线、纹理坐标等,然后对这些数据进行计算和变换,最终输出变换后的顶点位置和其他属性。
2、片元着色器(Fragment Shader):片元着色器也称为像素着色器,用于对模型的每个像素进行处理。它接收顶点着色器传递过来的数据,如顶点位置、法线、纹理坐标等,然后根据这些数据进行光照计算、纹理采样、颜色计算等,最终确定每个像素的最终颜色和透明度。
3、几何着色器(Geometry Shader):几何着色器是在顶点着色器和片元着色器之间的一个可选阶段。它可以对几何图元(如点、线、三角形)进行处理和操作,例如生成新的几何图元、修改顶点属性等。几何着色器通常用于实现几何变换、粒子系统、法线计算等功能。
4、计算着色器(Compute Shader):计算着色器是一种独立于图形渲染管线的着色器类型。它可以在GPU上进行通用计算,而不仅仅局限于图形渲染。计算着色器通常用于并行计算任务,如物理模拟、图像处理、数据处理等。
以上内容参考:网络百科-着色器
安卓的软件应用的界面可以使用cpu或gpu渲染,包括桌面。 由于gpu处理图形比cpu好,所以gpu渲染应用的界面会更流畅,同时减轻cpu的负担。 gpu强制渲染就是hwa(hard wareacceleration硬件加速)的一种,能够得到更好的优化。 在安卓3.0前,安卓都没有强制gpu渲染,应用在运行前会多了一个检测,检查应用是否支持gpu加速hwa,然后采用应用默认的cpu渲染或gpu渲染的方式。 在3.0之后,安卓在开发者选项里增加了强制gpu渲染,开启Force GPU Rendering之后,系统不再检查软件是否支持HWA,一律使用GPU渲染界面,不仅减少检测hwa的环节,充分利用gpu,减轻cpu的负担,软件和桌面提高帧数,变得更流畅,但强制gpu也是有缺陷的。 第一是强制GPU加速功能会增加功耗,降低待机时间。 第二是,部分旧程序本身不支持gpu渲染,没有硬件加速hwa的就会出现崩溃。 比较老的程序因为SDK版本低不支持gpu加速,或者开发时默认不开启gpu渲染,遇上gpu强制渲染就会出现问题。 兼容4.0的新版软件总会进行GPU加速,与开不开这个选项无关。 打开“强制进行GPU渲染”后,不支持GPU加速的软件也强制GPU渲染,这有可能会造成程序无响应、死机等兼容性问题。 总之,强制gpu渲染会充分利用gpu,而不是游戏时才使用gpu,同时增加功耗,降低续航,不会影响手机使用寿命。
内容声明:
1、本站收录的内容来源于大数据收集,版权归原网站所有!
2、本站收录的内容若侵害到您的利益,请联系我们进行删除处理!
3、本站不接受违法信息,如您发现违法内容,请联系我们进行举报处理!
4、本文地址:https://link.52hwl.com/article/49cf9698366703152c2f.html,复制请保留版权链接!
5月25日,中央纪委国家监委网站发布了一则消息,指出国家烟草专卖局网站显示某位领导是出生于1964年10月,他分管发展计划司、财务管理与监督司,审计司,、电子烟监督管理领导小组办公室、烟草经济信息中心、中国烟叶公司、中国卷烟销售公司、中烟商务物流有限责任公司等部门,而在5月14日,他还在河北省烟草专卖局,公司,进行调研,拜访了石家庄市...。
2024-05-29 05:32:11
最近,娱乐圈再次掀起了一场风波,知名网红森林北与汪峰的恋情传闻刚刚平息,却又因新疆文旅宣布终止与其合作而再次成为公众关注的焦点,这起事件不仅让森林北的恋情炒作梦碎,也让娱乐圈的风波再起,据悉,森林北原本计划通过与汪峰的恋情传闻来增加自己的曝光度和知名度,她以其独特的个人魅力和对文旅产业的深刻理解,成功吸引了大量粉丝和关注,她近期的一系...。
2024-05-29 05:10:21
自从知道了地球只是太阳的一颗行星之后,天文学家开始猜测,宇宙中其他的恒星应该也有自己的行星,这种猜测在1995年首次得到了证实,这一年里,天文学家在飞马座方向、距离我们大约51光年的位置上,发现了一颗围绕着恒星运行的行星——飞马座51b,51Pegasib,在接下来的日子里,随着观测水平的日益提升,又有更多的系外行星陆续被发现,迄今...。
2024-05-29 03:09:29
5月27日晚,中国国足进行了抵达沈阳后的首次训练,训练开始前,主帅伊万科维奇接受了媒体采访,他掷地有声的表示,对阵泰国队的比赛,中国队的唯一目标就是取胜,记者,您看到了,今天来了这么多记者,是不是也体会到了,这场比赛对于所有球迷的意义,伊万科维奇,确实是,看到这么多记者来到这里,其实记者不来这么多,我们也知道这场比赛的意义非常重大,我...。
2024-05-29 02:26:32
在当下,电视剧种类繁多,但每一部作品中都难免存在一些穿帮镜头,这些细节失误会使观众产生出戏感,并非每个观众都会留意到这些失误,只有那些留心观察的人才会发现,让我们一起来详细分析其中的穿帮镜头,首先是第一个穿帮镜头,女主明明被泼了一身水,但在场景转换时,她的服装却干湿不均,这明显显示了服装的不连贯性,图中还有一个帅哥穿着与前半段不同的衣...。
2024-05-28 18:07:17
最近,娱乐圈再次掀起了一场风波,知名网红森林北与汪峰的恋情传闻刚刚平息,但却因新疆文旅宣布终止与其合作而再次成为公众关注的焦点,这起事件让森林北的恋情炒作梦碎,娱乐圈的风波再起,据悉,森林北原本计划通过与汪峰的恋情传闻来增加自己的曝光度和知名度,她以个人魅力和对文旅产业的深刻理解,成功吸引了大量粉丝和关注,她近期一系列举动引起新疆文旅...。
2024-05-28 17:29:09
根据36氪的报道,商用清洁机器人研发公司霞智科技最近完成了Pre,A2轮融资,本轮融资由常春藤资本投资,义柏资本担任财务顾问,此前,该公司已完成了由容亿投资、泓诺创投、海松资本联合领投的数千万元Pre,A1轮融资,两轮融资总额接近亿元,主要资金将用于产品研发、渠道建设以及海外资源投入等方面,中国政府自十四五规划开始强调发展服务机器人,...。
2024-03-11 20:54:38
本文探讨了从互联网1.0到互联网3.0的演变,强调了人工智能在这个过程中的作用以及政治对互联网的影响,作者认为,互联网3.0可能会由政治来定义,并呼吁企业重新关注打造优质产品和经济模式,将政治问题留给人类处理,文章同时引用了历史上印刷术的例子,说明印刷术如何促进了文化传播和社会变革,对欧洲甚至美国的宗教改革和国家建立产生了深远影响,作...。
2024-03-11 20:40:10
中芯国际,作为中国芯片巨头企业,在最近宣布净利润腰斩,这引发了人们对芯片销售形势的关注,原因有以下几点,一方面,过去一年半导体行业处于周期底部,全球市场需求疲软,行业库存较高,去库存速度较慢,加之同业竞争激烈,这导致了中芯国际净利润的下滑,去年全球半导体市场供过于求,主要芯片产品的价格暴跌,并引发库存积压,台积电等其他芯片代工厂也受到...。
2024-02-13 13:51:55
有时候,苦与乐是可以相互调换的,比如一位在一线城市的打工人,平时或许和工作相看两相厌,但在过年的好日子里,他们竟会毅然选择一个猛子扎进工作中,甚至以自愿加班的形式,来逃避由此带来的种种烦恼,有人感叹,九天的假期,如果都要在家待着,不是太短而是太长了,在豆瓣,不想回家,不想过节联盟小组中,农历大年三十当天,有人在自嘲过年人设是嗯,有人在...。
2024-02-13 11:30:48
下载王者营地-然后打开地址跳转到APP参与-有5次机会-打捞漂流瓶3次必得一张排位庇护卡 活动地址: https://pvp.qq.com/cp/a20210418bottle/index.html
2021-05-02 16:15:38