视点变换,旋转,加速减速,星空背景太阳,光晕各行星纹理#include#include#include#include#include#include#include#pragmacomment(lib,"winmm.lib")#pragmacomment(lib,"wininet")//纹理图像结构typedefstruct{intimgWidth;//纹理宽度intimgHeight;//纹理高度unsignedcharbyteCount;//每个象素对应的字节数,3:24位图,4:带alpha通道的24位图unsignedchar*data;//纹理数据}TEXTUREIMAGE;//BMP文件头#pragmapack(2)typedefstruct{unsignedshortbfType;//文件类型unsignedlongbfSize;//文件大小unsignedshortbfReserved1;//保留位unsignedshortbfReserved2;//保留位unsignedlongbfOffBits;//数据偏移位置}BMPFILEHEADER;#pragmapack()//BMP信息头typedefstruct{unsignedlongbiSize;//此结构大小longbiWidth;//图像宽度longbiHeight;//图像高度unsignedshortbiPlanes;//调色板数量unsignedshortbiBitCount;//每个象素对应的位数,24:24位图,32:带alpha通道的24位图unsignedlongbiCompression;//压缩unsignedlongbiSizeImage;//图像大小longbiXPelsPerMeter;//横向分辨率longbiYPelsPerMeter;//纵向分辨率unsignedlongbiClrUsed;//颜色使用数unsignedlongbiClrImportant;//重要颜色数}BMPINFOHEADER;//定义窗口的标题、宽度、高度、全屏布尔变量#defineWIN_TITLE"模拟太阳系各星球的转动"constintWIN_WIDTH=800;constintWIN_HEIGHT=600;BOOLisFullScreen=FALSE;//初始不为全屏#defineDEG_TO_RAD0.017453floatangle=0.0;staticGLdoubleviewer[]={0,0,0,0,0};//初始化视角GLUquadricObj*quadric;//建立二次曲面对象GLfloatangle_Z;//星空旋转角度boolg_bOrbitOn=true;//控制转动暂停floatg_fSpeedmodifier=1.0f;//时间控制floatg_fElpasedTime;doubleg_dCurrentTime;doubleg_dLastTime;GLfloatLightAmbient[]={1.0f,1.0f,1.0f,0.0f};//环境光参数GLfloatLightDiffuse[]={1.0f,1.0f,1.0f,0.0f};//漫射光参数GLfloatLightPosition[]={0.0f,0.0f,0.0f,1.0f};//光源的位置//纹理图象TEXTUREIMAGEskyImg;TEXTUREIMAGEsunImg;TEXTUREIMAGErayImg;TEXTUREIMAGEmercuImg;TEXTUREIMAGEvenusImg;TEXTUREIMAGEearthImg;TEXTUREIMAGEmarsImg;TEXTUREIMAGEjupiterImg;TEXTUREIMAGEsaturnImg;TEXTUREIMAGEuranusImg;TEXTUREIMAGEneptuneImg;TEXTUREIMAGEmoonImg;GLuinttexture[12];//纹理数组//星球速度定义staticfloatfSunSpin=0.0f;//太阳自转速度staticfloatfMercuSpin=0.0f;//水星自转速度staticfloatfMercuOrbit=0.0f;//水星公转速度staticfloatfVenusSpin=0.0f;//金星自转速度staticfloatfVenusOrbit=0.0f;//金星公转速度staticfloatfEarthSpin=0.0f;//地球自转速度staticfloatfEarthOrbit=0.0f;//地球公转速度staticfloatfMarsSpin=0.0f;//火星自转速度staticfloatfMarsOrbit=0.0f;//火星公转速度staticfloatfJupiterSpin=0.0f;//木星自转速度staticfloatfJupiterOrbit=0.0f;//木星公转速度staticfloatfSaturnSpin=0.0f;//土星自转速度staticfloatfSaturnOrbit=0.0f;//土星公转速度staticfloatfUranusSpin=0.0f;//天王星自转速度staticfloatfUranusOrbit=0.0f;//天王星公转速度staticfloatfNeptuneSpin=0.0f;//海王星自转速度staticfloatfNeptuneOrbit=0.0f;//海王星公转速度staticfloatfMoonSpin=0.0f;//月亮自转速度staticfloatfMoonOrbit=0.0f;//月亮公转速度voidMakeTexture(TEXTUREIMAGEtextureImg,GLuint*texName)//转换为纹理{glPixelStorei(GL_UNPACK_ALIGNMENT,1);//对齐像素字节函数glGenTextures(1,texName);//第一个参数指定表明获取多少个连续的纹理标识符glBindTexture(GL_TEXTURE_2D,*texName);glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_REPEAT);glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_REPEAT);glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,textureImg.imgWidth,textureImg.imgHeight,0,GL_RGB,GL_UNSIGNED_BYTE,textureImg.data);}//初始化OpenGLvoidInitGL(void){glClearColor(0.0f,0.0f,0.0f,0.5f);//设置黑色背景glClearDepth(2.0f);//设置深度缓存glEnable(GL_DEPTH_TEST);//启动深度测试glDepthFunc(GL_LEQUAL);//深度小或相等的时候渲染glShadeModel(GL_SMOOTH);//启动阴影平滑glEnable(GL_CULL_FACE);//开启剔除操作效果glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST);//使用质量最好的模式指定颜色和纹理坐标的插值质量glLightfv(GL_LIGHT1,GL_AMBIENT,LightAmbient);//设置环境光glLightfv(GL_LIGHT1,GL_DIFFUSE,LightDiffuse);//设置漫反射光glEnable(GL_LIGHTING);//打开光照glEnable(GL_LIGHT1);//打开光源1//载入纹理glEnable(GL_TEXTURE_2D);//开启2D纹理映射MakeTexture(skyImg,&texture;[0]);MakeTexture(sunImg,&texture;[1]);MakeTexture(rayImg,&texture;[2]);MakeTexture(mercuImg,&texture;[3]);MakeTexture(venusImg,&texture;[4]);MakeTexture(earthImg,&texture;[5]);MakeTexture(marsImg,&texture;[6]);MakeTexture(jupiterImg,&texture;[7]);MakeTexture(saturnImg,&texture;[8]);MakeTexture(uranusImg,&texture;[9]);MakeTexture(neptuneImg,&texture;[10]);MakeTexture(moonImg,&texture;[11]);quadric=gluNewQuadric();//建立一个曲面对象指针gluQuadricTexture(quadric,GLU_TRUE);//建立纹理坐标gluQuadricDrawStyle(quadric,GLU_FILL);//面填充}voidDisplay(void){glLoadIdentity();//设置观察点的位置和观察的方向gluLookAt(viewer[0],viewer[1],viewer[2],viewer[3],viewer[4],-5,0,1,0);//摄像机x,摄像机y,摄像机z,目标点x,目标点y,目标点z,摄像机顶朝向x,摄像机顶朝向y,摄像机顶朝向z//获得系统时间使太阳系有动态效果g_dCurrentTime=timeGetTime();g_fElpasedTime=(float)((g_dCurrentTime-g_dLastTime)*0.0005);g_dLastTime=g_dCurrentTime;glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);glMatrixMode(GL_MODELVIEW);//指定GL_MODELVIEW是下一个矩阵操作的目标glTranslatef(0.0f,0.0f,-5.0f);//将坐标系移入屏幕5.0fglRotatef(10,1.0f,0.0f,0.0f);//将坐标系绕x轴旋转10度glEnable(GL_LIGHT0);//打开光源0/**********************************绘制背景星空********************************************/glPushMatrix();//当前模型矩阵入栈glTranslatef(-10.0f,3.0f,0.0f);glRotatef(angle_Z,0.0f,0.0f,1.0f);glEnable(GL_TEXTURE_2D);glBindTexture(GL_TEXTURE_2D,texture[0]);//星空纹理glBegin(GL_QUADS);glNormal3f(0.0f,0.0f,1.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(-50.0f,-50.0f,-50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(50.0f,-50.0f,-50.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(50.0f,50.0f,-50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(-50.0f,50.0f,-50.0f);glEnd();glBegin(GL_QUADS);glNormal3f(0.0f,0.0f,-1.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(-50.0f,-50.0f,50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(50.0f,-50.0f,50.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(50.0f,50.0f,50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(-50.0f,50.0f,50.0f);glEnd();glBegin(GL_QUADS);glNormal3f(0.0f,1.0f,0.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(-50.0f,-50.0f,-50.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(50.0f,-50.0f,50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(50.0f,-50.0f,-50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(-50.0f,-50.0f,50.0f);glEnd();glBegin(GL_QUADS);glNormal3f(0.0f,-1.0f,0.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(-50.0f,50.0f,-50.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(50.0f,50.0f,50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(50.0f,50.0f,-50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(-50.0f,50.0f,50.0f);glEnd();glBegin(GL_QUADS);glNormal3f(1.0f,0.0f,0.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(-50.0f,-50.0f,-50.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(-50.0f,50.0f,50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(-50.0f,-50.0f,50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(-50.0f,50.0f,-50.0f);glEnd();glBegin(GL_QUADS);glNormal3f(-1.0f,0.0f,0.0f);glTexCoord2f(6.0f,6.0f);glVertex3f(50.0f,-50.0f,-50.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(50.0f,50.0f,50.0f);glTexCoord2f(6.0f,0.0f);glVertex3f(50.0f,-50.0f,50.0f);glTexCoord2f(0.0f,6.0f);glVertex3f(50.0f,50.0f,-50.0f);glEnd();glPopMatrix();//当前模型矩阵出栈/**********************************绘制太阳************************************************/glBindTexture(GL_TEXTURE_2D,texture[2]);//光晕纹理glEnable(GL_BLEND);//开启混合glDisable(GL_DEPTH_TEST);//关闭深度测试//绘制太阳光晕glDisable(GL_LIGHTING);//关闭光照glBlendFunc(GL_SRC_ALPHA,GL_ONE);//半透明混合函数glColor4f(1.0f,0.5f,0.0f,0.5f);//设置RGBA值glBegin(GL_QUADS);glNormal3f(0.0f,0.0f,1.0f);glTexCoord2f(0.0f,0.0f);glVertex3f(-1.0f,-1.0f,0.0f);glTexCoord2f(1.0f,0.0f);glVertex3f(1.0f,-1.0f,0.0f);glTexCoord2f(1.0f,1.0f);glVertex3f(1.0f,1.0f,0.0f);glTexCoord2f(0.0f,1.0f);glVertex3f(-1.0f,1.0f,0.0f);glEnd();glDisable(GL_BLEND);//关闭混合glEnable(GL_DEPTH_TEST);glEnable(GL_LIGHTING);//开启光照glLightfv(GL_LIGHT1,GL_POSITION,LightPosition);//设置光源1位置glBindTexture(GL_TEXTURE_2D,texture[1]);//太阳纹理//将坐标系绕Y轴旋转fSunSpin角度,控制太阳自转glRotatef(fSunSpin,0.0,1.0,0.0);gluSphere(quadric,0.3f,32,32);//绘制太阳球体/**********************************绘制水星************************************************/glDisable(GL_LIGHT0);glEnable(GL_TEXTURE_2D);//开启纹理glPushMatrix();//当前模型视图矩阵入栈//将坐标系绕Y轴旋转fMercuOrbit角度,控制水星公转glRotatef(fMercuOrbit,0.0f,1.0f,0.0f);glRotatef(-90.0f,1.0f,0.0f,0.0f);//将坐标系绕X轴旋转-90度glTranslatef(0.5f,0.0f,0.0f);//将坐标系右移0.5fglBindTexture(GL_TEXTURE_2D,texture[3]);//水星纹理//将坐标系绕Z轴旋转fMercuSpin角度控制水星自转glRotatef(fMercuSpin,0.0f,0.0f,1.0f);gluSphere(quadric,0.04f,32,32);//水星球体glPopMatrix();//当前模型视图矩阵出栈//绘制轨道glBegin(GL_LINE_LOOP);for(angle=0;angle=-6.0)viewer[0]-=0.5;break;case'u':case'U':if(viewer[1]=-6.0)viewer[1]-=0.1;break;case'+':case'='://加速,减速,暂停g_fSpeedmodifier+=1.0f;glutPostRedisplay();break;case'':g_bOrbitOn=!g_bOrbitOn;glutPostRedisplay();break;case'-'://按'-'减小运行速度g_fSpeedmodifier-=1.0f;glutPostRedisplay();break;caseVK_ESCAPE://按ESC键时退出exit(0);break;default:break;}}voidspecial_keys(ints_keys,intx,inty){switch(s_keys){caseGLUT_KEY_F1://按F1键时切换窗口/全屏模式if(isFullScreen){glutReshapeWindow(WIN_WIDTH,WIN_HEIGHT);glutPositionWindow(30,30);isFullScreen=FALSE;}else{glutFullScreen();isFullScreen=TRUE;}break;caseGLUT_KEY_RIGHT://视角上下左右旋转if(viewer[3]=-3.0)viewer[3]-=0.1;break;caseGLUT_KEY_UP:if(viewer[4]=-4.5)viewer[4]-=0.1;break;default:break;}}voidmouse(intbtn,intstate,intx,inty)//远近视角{if(btn==GLUT_RIGHT_BUTTON&&state==GLUT_DOWN)viewer[2]+=0.3;if(btn==GLUT_LEFT_BUTTON&&state==GLUT_DOWN&&viewer;[2]>=-3.9)viewer[2]-=0.3;}voidLoadBmp(char*filename,TEXTUREIMAGE*textureImg)//载入图片{inti,j;FILE*file;BMPFILEHEADERbmpFile;BMPINFOHEADERbmpInfo;intpixel_size;//初始化纹理数据textureImg->imgWidth=0;textureImg->imgHeight=0;if(textureImg->data!=NULL){delete[]textureImg->data;}//打开文件file=fopen(filename,"rb");if(file==NULL){return;}//获取文件头rewind(file);fread(&bmpFile;,sizeof(BMPFILEHEADER),1,file);fread(&bmpInfo;,sizeof(BMPINFOHEADER),1,file);//验证文件类型if(bmpFile.bfType!=0x4D42){return;}//获取图像色彩数pixel_size=bmpInfo.biBitCount>>3;//读取文件数据textureImg->data=newunsignedchar[bmpInfo.biWidth*bmpInfo.biHeight*pixel_size];for(i=0;idata+(i*bmpInfo.biWidth+j)*pixel_size+2,sizeof(unsignedchar),1,file);//绿色分量fread(textureImg->data+(i*bmpInfo.biWidth+j)*pixel_size+1,sizeof(unsignedchar),1,file);//蓝色分量fread(textureImg->data+(i*bmpInfo.biWidth+j)*pixel_size+0,sizeof(unsignedchar),1,file);//Alpha分量if(pixel_size==4){fread(textureImg->data+(i*bmpInfo.biWidth+j)*pixel_size+3,sizeof(unsignedchar),1,file);}}}//记录图像相关参数textureImg->imgWidth=bmpInfo.biWidth;textureImg->imgHeight=bmpInfo.biHeight;textureImg->byteCount=pixel_size;fclose(file);}//程序主函数voidmain(intargc,char**argv){//读图片LoadBmp("Picture//Sky.bmp",&skyImg;);LoadBmp("Picture//Sun.bmp",&sunImg;);LoadBmp("Picture//Ray.bmp",&rayImg;);LoadBmp("Picture//Mercu.bmp",&mercuImg;);LoadBmp("Picture//Venus.bmp",&venusImg;);//金星LoadBmp("Picture//Earth.bmp",&earthImg;);LoadBmp("Picture//Mars.bmp",&marsImg;);//火星LoadBmp("Picture//Jupiter.bmp",&jupiterImg;);//木星LoadBmp("Picture//Saturn.bmp",&saturnImg;);//土星LoadBmp("Picture//Uranus.bmp",&uranusImg;);//天王星LoadBmp("Picture//Neptune.bmp",&neptuneImg;);//海王星LoadBmp("Picture//Moon.bmp",&moonImg;);glutInit(&argc;,argv);//初始化GLUT库glutInitDisplayMode(GLUT_RGBA|GLUT_DOUBLE|GLUT_DEPTH);//初始化显示模式glutInitWindowSize(WIN_WIDTH,WIN_HEIGHT);//初始化窗口大小glutInitWindowPosition(20,20);//初始化窗口位置GLuintwindow=glutCreateWindow(WIN_TITLE);//建立窗口InitGL();//初始化OpenGLglutDisplayFunc(Display);glutReshapeFunc(Reshape);glutKeyboardFunc(keyboard);glutSpecialFunc(special_keys);glutMouseFunc(mouse);glutIdleFunc(Display);//设置窗口空闲时的处理函数glutMainLoop();//进入事件处理循环}
2025/6/8 20:47:10 3.53MB 三维动画 模拟太阳系
1
Blend對設計App介面真是一大福音,它提供精確的設計介面和工具,可讓你以視覺化方式建立和編輯Windows應用程式,藉此協助你設計及建置使用者介面。
這些設計工具利用Windows8技術來建立可在各種Windows架構硬體執行的動態應用程式。
2024/12/13 21:07:20 5.88MB Blend Visual Studio WPF
1
SharpSCADA-工控网关,轻量级组态软件.===================简介-------------采用技术:开发语言:C#运行环境:.NETFramework数据库:SQLServer功能:-------------*1.轻量级工控网关:支持当前几种主要的工业协议如西门子的Profinet、AB的EtherNetIPs、施耐德的Modbus和OPC。
采用类OPC接口网关。
*2.数据采集、归档、预警及配置工具支持实时数据采集、历史数据归档、变量触发预警,并使用TagConfig工具简单的配置实现。
*3.人机界面(设计时和运行时)*设计时:采用MicrosoftVisualStudio+设计器插件(在VS2010-VS2015社区版测试通过)。
通过继承HMIControlBase接口并书写极少量的代码即可实现复杂的图元组件。
支持图元拖放、组合、连线、变量绑定及编辑功能。
*运行时:MicrosoftVisualStudio编译运行为可执行文件。
环境准备-------------Windows:支持的操作系统:Windows7/8/10/Server2008.NETFramework4.0/4.5/4.6SQLServerExpress2014/2008项目安装-------------下载最新版本,解压后:*1.可直接打开项目工程文件测试源代码:..\SCADA\Program下运行DataExchange.sln(支持VS2010-2015各版本)*2.可运行可执行文件测试:Server端测试:在目录..\SCADA\Program\BatchCoreTest\bin\Debug下运行BatchCoreTest.exeClient端测试:在目录..\SCADA\Program\CoreTest\bin\Debug下运行CoreTest.exe请参考Document文件夹中的教程:《部署流程》和《设计流程》,如有问题可参考《FAQ》文档。
QuickStart-------------*1.还原数据库*2.修改配置文件并复制到C盘根目录下*3.修改数据库内驱动程序的路径*4.运行DEMO具体流程可参看《部署流程》。
开发工具推荐-------------VisualStudio/Blend:做为组态设计器,推荐VS2010,VS2015版本。
项目结构-------------驱动程序目前支持:*已发布:内存数据库ModbusTCP/RTU、OPCDA、SiemensS300/200/1200/1500、Panasonic、OmronUDP*后续发布:DDE、ABEtherNetIP、Mitsubishi文件目录-------------*Database目录[存放数据文件]:db2014.bak文件为SQLServer2014数据备份文件。
db2008.bak文件为SQLServer2008数据备份文件。
test.opf为Kepserver4.5数据文件(可通过该软件还原为变量表)。
两个csv文件为两组变量。
*DataConfig目录[存放配置文件]:host.cfg为主配置文件,第一行为网关服务器名/IP地址。
如在本地测试,按默认lochost即可。
client.xml为客户端配置文件。
server.xml为网关服务配置文件。
*dll目录[存放驱动程序及第三方组件]:如OPCDriver即为OPC通讯组件。
Dynamicdatadisplay:开源归档数据显示组件,http://dynamicdatadisplay.codeplex.com/WPFToolkit:WPF开源扩展工具包,http://wpftoolkit.codeplex.comlibnodave:西门子驱动开源库(https://github.com/netdata/libnodave)*TagConfig目录[存放配置工具]:可方便配置驱动、组、变量、报警、量程等信息。
支持导入导出。
*Program目录[存放源代码]:BatchCoreTest工程为网关服务器测试代码(控制台显示)。
BatchCoreService工程同BatchCoreTest,但可编译为Windos服务。
DataService工程为框架及主要接口组件。
CoreTest工程为样例文件。
包含一系列界面元素。
HMIControl工程为图元组件。
可支持工具栏拖放。
LinkableContr
2024/4/15 14:54:13 46.94MB 开源组态软件
1
魔刀千刃碎片模型动画无绑骨
2023/8/13 23:44:09 48.05MB 武器模型
1
LibNoise分形噪声函数库的JAVA翻译版,个人开发,仅供参考。
包中包含:异常模块:noise.Exceptionnoise.ExceptionInvalidParam无效的参数异常。
noise.ExceptionNoModule无模块异常,无法检索到该源模块noise.ExceptionOutOfMemorynoise.ExceptionUnknown模型模块:noise.model.Line线noise.model.Plane平面noise.model.Sphere球体noise.model.Cylinder圆柱发生器模块:noise.module.Perlin培林噪声 noise.module.RidgedMulti脊多重分形噪声noise.module.Billow巨浪 value=|perlin_value|*2-1.0;noise.module.Voronoi细胞噪声,Voronoi图noise.module.Const常量 value=const;noise.module.Cylinders圆柱noise.module.Checkerboard棋盘格 value=(floor(x)&1^floor(y)&1^floor(z)&1)!=0?-1.0:1.0;noise.module.Spheres球体选择器模块:noise.module.Select选择noise.module.Blend混合 value=((1.0-(modules[3].value+1)/2)*modules[0].value)+((modules[3].value+1)/2*modules[1].value);修饰器模块:noise.module.Invert倒置 value=-value;noise.module.Abs绝对值 value=|value|;noise.module.Clamp截取 value=(valueupperBound?upperBound:value);lowerBound:下截取值;upperBound:上截取值noise.module.Curve曲线 value=noise.module.Curve.ControlPoint控制点noise.module.ScaleBias偏移缩放, value=value*scale+offsetnoise.module.Turbulence湍流 value=modules[0].getValue(x+modules[1].value*power,y+modules[2].value*power,z+modules[3].value*power);noise.module.Exponent指数 value=(pow(abs((value+1.0)/2.0),exponent)*2.0-1.0);组合模块:noise.module.Add添加 value=modules[0].value+modules[1].value;noise.module.Max最大值 value=max(value);noise.module.Min最小值 value=min(value);noise.module.Multiply乘法 value=modules[0].value*modules[1].value;noise.module.Power权重 value=pow(modules[0].value,modules[1].value);变压模块:noise.module.Displace位移替换,扭曲value=modules[0].getValue(x+modules[1].value,y+modules[2].value,z+modules[3].value);noise.module.RotatePoint点旋转noise.module.ScalePoint点缩放,轴缩放 value=modules[0].getValue(x*xScale,y*yScale,z*zScale);noise.module.Terrace露台,梯台noise.mod
2023/7/8 13:24:28 53KB java 噪声 分形 地形
1
做海面风场领悟钻研的代码programvar_blend!useblend_data!implicitnone!=======================================================!nxrepresentthenumberofmodelinxaxis!nyrepresentthenumberofmodelinyaxis!kxrepresentthenumberofQuikSCATinxaxis!kyrepresentthenumberofQuikSCATinyaxis!nnrepresentthetotalnumberofmodel!krepresentthetotalnumberofQuikSCAT
2023/4/8 4:41:47 12KB fortran
1
使用Blend开拓WPF名目,能够在很大水平上普及你的开拓功能以及水平,不用再为负载的Xaml代码而懊恼,在此谢谢教程的编写者。
2023/3/31 17:10:25 18.16MB Blend
1
使用的主要技术有:1、大面积山脉渲染,使用Heightmap构造地形,7级LOD细节精度,地形无限重复循环。
2、清晰、自然的地表贴图。
3、读取.MD2、.MS3D格式的3D模型文件。
4、粒子系统,产生爆炸、炊烟等特效。
5、太阳光晕。
6、使用Blend模拟Brightness/contrast调节图象亮度。
操作控制可以在GameSetting菜单中设定:1.视频属性(VideoSetting)1).屏幕分辨率(Resolution)游戏率默认为800*600,在任务执行前可改变分辨率,但不会立即生效,只有在初始化任务时才改变分辨率。
2).屏幕亮度(Brigthness)在不同的硬件配置上,屏幕亮度往往表现出较大差异,通过该项可将亮度调节到最佳。
3).视野范围(VisibleDistance)调节地形绘制的距离。
对于配置较低的硬件,适当降低视野距离可提高帧速率,但由于远处地形网格较粗,对帧速率提高贡献并不大。
4).雾浓度(FogDensity)2.音频属性(AudioSetting)1).背景音乐(music)可以打开或关闭背景音乐,可以调节音量。
音乐播放audio/music/menu.mp3,如果你有自己喜爱的mp3音乐文件可以将它替换menu.mp3文件。
2).音效(sound)可以打开或关闭音效,可以调节音量。
游戏中的枪声与人物的发声具有3D效果。
3.键盘操作(KeyboardSetting)以下操作可以更改Up、Down、Left、Right设定移动操作。
Fire射击Jump跳跃Zoom放大远处景物Help弹出协助修改方法:用鼠标点击选项,然后输入新的按键。
另外,游戏保留了几个开发模式下的操作:PageUp提升视点高度PageDown降低视点高度(可以看到地形绘制区域)L线框模式F冻结所有敌人V隐身N敌人攻击力为零I隐藏房子O隐藏敌人P隐藏树木在游戏运行中,按Help项的按键获得协助。
4.鼠标操作鼠标的移动可改变视角,默认设定左键为射击,右键为放大。
2021/11/13 15:52:25 32.91MB c++
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡