tag 标签: 引擎

相关博文
  • 热度 17
    2012-2-20 22:10
    1039 次阅读|
    0 个评论
    这是再次改进后的引擎代码,现在可以识别一些简单的布局陷阱,但是还有不足,等以后添加上检测活三的模块后,可以变得更强!期待中,有改进意见只管说出来,大家一起交流! public void danao9(int x,int y) {   int luozix=0;  int luoziy=0;  int jishu1=0;  int jishu2=0;  int hei*****shu=4;  int bai*****shu=-1;  int counter1=0;  int counter2=0;  int xunhuanx=0;  int xunhuany=0;  int chuanrux=0;  int chuanruy=0;  int locationx=0;  int locationy=0;  int weizix=0;  int weiziy=0;  chuanrux=x/20;  chuanruy=y/20;  int jifen ={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};  int dingweiy ={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};  for(xunhuanx=chuanrux-2;xunhuanxchuanrux+3;xunhuanx++)     for(xunhuany=chuanruy-2;xunhuanychuanruy+3;xunhuany++)     {      if(xunhuanx==chuanruxxunhuany==chuanruy)      {       dingwei =1000;      }      else      {       if(xunhuanx0||xunhuanx24||xunhuany0||xunhuany24)       {        dingwei =1000;       }       else       {        dingweix =xunhuanx;        dingweiy =xunhuany;       }            }      jishu1++;     }  for(jishu2=0;jishu225;jishu2++)  {   weizix=dingweix ;   weiziy=dingweiy ;   if(dingwei ==1000)   {    continue;   }   else   {    if((bodyArray ==1)||(bodyArray ==-1))         {          jifen +=-100;         }    else    {              }   }  }      for(jishu2=0;jishu225;jishu2++)  {   weizix=dingweix ;   weiziy=dingweiy ;   if(jishu2!=13)   {    if(chuanrux==weizix||chuanruy==weiziy)    {     jifen +=hei*****shu;    }    else    {     if((chuanrux-weizix)==(chuanruy-weiziy))     {      jifen +=hei*****shu;     }     else     {           }    }   }   if(dingwei ==1000)   {    continue;   }   else   {    for(counter1=0;counter125;counter1++)    {     locationx=dingweix ;     locationy=dingweiy ;     if(locationx==weizixlocationy==weiziy)     {      continue;     }     else     {      if(locationx==weizix||locationy==weiziy)      {       if(bodyArray ==1)       {        jifen +=hei*****shu;       }       else       {        if(bodyArray ==-1)        {         jifen +=bai*****shu;        }        else        {                 }       }       }      else      {       if((locationx-weizix)==(locationy-weiziy))       {        if(bodyArray ==1)         jifen +=hei*****shu;        else        {         if(bodyArray ==-1)         {          jifen +=bai*****shu;         }         else         {                   }        }        }       else       {               }      }     }    }   }  }  int zuida=0;  for(counter2=0;counter225;counter2++)  {   if(jifen zuida)   {    zuida=jifen ;   }   else   {    continue;   }  }    for(counter2=0;counter225;counter2++)  {   if(jifen ==zuida)   {    luozix=dingweix *20;    luoziy=dingweiy *20;   }   else   {       }  }      setDown2(luozix,luoziy); }
  • 热度 16
    2012-2-20 15:10
    2012 次阅读|
    0 个评论
    好了,这个就是在上次五子棋平台上开发的引擎1.0.但是这个引擎的水平比较的低,选取的就是在danao9函数中的部分,其余是不变的,主要思想就是在 黑棋每次的落点的四周的8个点评分,然后选出合适的点,有趋近同类棋子的特性,也就是会选择白棋多的地方落子。大家多给改进的意见哈! public void danao9(int x,int y) {         int luozix=20;     int luoziy=20;     int weizix=0;     int weiziy=0;     int jishu=0;     int jishu1;     int jishu2;     int dingweixunhuanx;     int dingweixunhuany;     int pinfeng ={0,0,0,0,0,0,0,0};     int dingweiy =1000;                dingweiy =1000;                continue;            }            else            {                            if(jishux0||jishux24||jishuy0||jishuy24)              {                  dingweix =1000;                  dingweiy =1000;              }              else              {                  if(0==bodyArray )                  {                    dingweix =jishux;                    dingweiy =jishuy;                  }                  else                  {                      dingweix =1000;                      dingweiy =1000;                      jishu++;                     continue;                                      }              }            }            jishu++;        }     jishux=0;     jishuy=0;     for(jishu=0;jishu8;jishu++)     {         weizix=0;         weiziy=0;         if(dingweix ==1000||dingweiy ==1000)         {             pinfeng =10000;             continue;         }         else         {             weizix=dingweix ;             weiziy=dingweiy ;                                 }         for(jishu1=weizix-1;jishu1             for(jishu2=weiziy-1;jishu2             {                 if(jishu10||jishu124||jishu20||jishu224)                 {                     pinfeng =10000;                     continue;                 }                 else                 {                    pinfeng +=bodyArray ;                 }             }     }     jishu=0;     int zuixiao=100;     for(jishu=0;jishu8;jishu++)     {         if(pinfeng         {             zuixiao=pinfeng ;         }     }     for(jishu=0;jishu8;jishu++)     {         if(pinfeng ==zuixiao)         {             luozix=dingweix *20;             luoziy=dingweiy *20;             break;         }         else         {             continue;         }     }   setDown2(luozix,luoziy); }) +2;jishu2++) +2;jishu1++) +2;dingweixunhuany++) +2;dingweixunhuanx++)
相关资源
  • 所需E币: 0
    时间: 2024-6-3 14:35
    大小: 2.51KB
    Qt对OpenGL的支持是内建的,也就是说,只要你的Qt版本支持OpenGL,你就可以在你的Qt应用程序中使用OpenGL,无需额外安装OpenGL。然而,要在你的Qt应用程序中使用OpenGL,你的系统需要有一个支持OpenGL的图形驱动。这通常意味着你需要在你的系统上安装一个支持OpenGL的图形卡驱动。大多数现代的桌面系统(包括Windows、macOS和大多数Linux发行版)都自带了支持OpenGL的图形驱动,所以你通常不需要手动安装。如果你的系统没有支持OpenGL的图形驱动,或者你的图形驱动不支持你需要的OpenGL版本,你可能需要手动安装一个新的图形驱动。这通常涉及到从你的图形卡制造商的网站下载驱动程序,并按照他们的指示进行安装。请注意,虽然Qt支持OpenGL,但并不是所有的Qt功能都需要OpenGL。大多数Qt功能(包括QtWidgets和QtQuick2D)都可以在没有OpenGL的系统上运行。只有一些特定的功能(如QtQuick3D和一些Qt3D功能)需要OpenGL。一、Vulkan和OpenGL区别Vulkan和OpenGL区别,Vulkan与OpenGL相比,可以更详细的向显卡描述你的应用程序打算做什么,从而可以获得更好的性能和更小的驱动开销。Vulkan的设计理念与Direct3D12和Metal基本类似,但Vulkan作为OpenGL的替代者,它设计之初就是为了跨平台实现的,可以同时在Windows、Linux和Android开发。甚至在MacOS系统上,Khronos也提供了Vulkan的SDK,虽然这个SDK底层其实是使用MoltenVK实现的。Vulkan的最大任务不是竞争DirectX,而是取代OpenGL,所以重点要看和后者的对比。在高分辨率、高画质、需要GPU发挥的时候,Vulkan、OpenGL的速度基本差不多,但是随着分辨率的降低,CPU越来越重要,Vulkan逐渐体现了出来,尤其是看看GTX980Ti,最多可以领先OpenGL33%之多!二、OpenGL对象我们可以把OpenGL对象理解成一个状态的集合,它负责管理它下属的所有状态。当然,除了状态,OpenGL对象还会存储其他数据。注意。这些状态和上述context中的状态并不重合,只有在把一个OpenGL对象绑定到context上时,OpenGL对象的各种状态才会映射到context的状态。因此,这时如果我们改变了context的状态,那么也会影响这个对象,而相反地,依赖这些context状态的函数也会使用存储在这个对象上的数据。因此,OpenGL对象的绑定既可能是为了修改该对象的状态(大多数对象需要绑定到context上才可以改变它的状态),也可能是为了让context渲染时使用它的状态。三、OpenGL的工作方式首先,OpenGL一开始最难理解的部分我觉得在于创建整个程序上。虽然我已经有一些图形学基础,但是拿到OpenGL的时候完全是懵逼的,因为完全不知道其程序的运作方式。所以在这里,我觉得最先需要解释的就是OpenGL的整体工作方式:OpenGL是一个状态机,因此,其工作方式来自于上下文环境的切换,或者说是设定当前上下文环境(Context)。因此,不论是创建的shader,还是VAO,VBO,都是需要创建之后绑定进入当前上下文的。四、学习OpenGL常见难点: 难点1:不知道如何将单个例子,结合成一个完整的渲染引擎  难点2:不能把Shader和CPU的流程联立在一起,不知道某个资源/数据,是从哪里来的。就算知道他是什么时候送到GPU的,也不知道GPU如何定位某个资源/数据。  难点3:难以建立起并行计算的思维方式  难点4:难以理解各种模板如何在多个批次之间发生作用。不能具象的去理解混合,测试的过程。不能够理解,FrameBuffer的真正含义。  难点5:难以建立起空间想象,不知道矩阵变换,如何将顶点,或其他数据,变换到不同的空间进行统一计算。  难点6:难以理解从Vertex到Fragment是如何过度的。 五、构建OpenGL程序1、在项目的根目录下创建buildmkdirbuildcdbuild2、执行cmake指令,指定要构建的文件系统和使用的编译器cmake..-GNinja-DCMAKE_C_COMPILER=clang-DCMAKE_CXX_COMPILER=clang++3、执行ninjaninja编译完成之后就可以在build目录下找到可执行程序了,能够正常运行就说明OpenGL的开发环境搭建完成。
  • 所需E币: 1
    时间: 2023-7-7 11:03
    大小: 328.79KB
    上传者: Argent
    HOT_配套培训资料19_CRC引擎
  • 所需E币: 1
    时间: 2023-5-12 16:25
    大小: 5.8MB
    三维游戏引擎设计与实现-(数字媒体艺术与技术系列丛书)-耿卫东-陈凯-李鑫-徐明亮
  • 所需E币: 1
    时间: 2023-4-10 11:38
    大小: 146.62MB
    游戏引擎架构-[美]JasonGregory
  • 所需E币: 1
    时间: 2023-4-10 18:32
    大小: 44.96MB
    PostgreSQL查询引擎源码技术探析-李浩
  • 所需E币: 1
    时间: 2023-3-28 11:10
    大小: 24.24MB
    AI游戏引擎程序设计-施瓦布
  • 所需E币: 3
    时间: 2022-5-24 14:29
    大小: 73.25MB
    上传者: xyzzyxaaa
    涡轮喷气引擎图纸.zip
  • 所需E币: 0
    时间: 2022-3-10 22:40
    大小: 1.41MB
    上传者: samewell
    如何自己开发一个大数据SQL引擎?.rar
  • 所需E币: 0
    时间: 2021-9-30 16:01
    大小: 1.6MB
    上传者: Argent
    从二极管到三极管,从单片机到多核MCU,3G网络到5G产品的普及,不管电子产品的集成度怎么高,其产品还是少不了电阻电容电感,每个元器件在电路中必然有其作用。单片机是芯片开发的基础,相信从中会获得您意想不到的知识。
  • 所需E币: 3
    时间: 2021-9-26 20:43
    大小: 671.13KB
    上传者: ZHUANG
    飞思卡尔推出面向小型引擎电子控制单元的模拟IC
  • 所需E币: 1
    时间: 2021-4-17 17:41
    大小: 360.87KB
    上传者: ZHUANG
    一种面向异构多核DSP的数据流传输控制引擎设计与评测
  • 所需E币: 1
    时间: 2021-4-8 15:08
    大小: 360.87KB
    上传者: czd886
    一种面向异构多核DSP的数据流传输控制引擎设计与评测
  • 所需E币: 3
    时间: 2021-3-24 18:35
    大小: 37.43MB
    上传者: samewell
    MySQL技术内幕InnoDB存储引擎第2版《MySQL技术内幕:InnoDB存储引擎(第2版)》由中国杰出MySQL权威专家亲身绘制,世界各国多名数据库查询权威专家联手强烈推荐。做为国内唯一二本有关InnoDB的著作,
  • 所需E币: 2
    时间: 2021-3-20 23:48
    大小: 8.78MB
    上传者: samewell
    开关电源中的功率变换器拓扑、分析与设计
  • 所需E币: 0
    时间: 2020-9-20 00:24
    大小: 39.36MB
    上传者: bwj312
    MySQL技术内幕InnoDB存储引擎第2版
  • 所需E币: 5
    时间: 2020-6-16 17:03
    大小: 10.87MB
    上传者: samewell
    《5G时代:经济增长新引擎》.pdf
  • 所需E币: 4
    时间: 2019-12-25 12:41
    大小: 7.55KB
    上传者: givh79_163.com
    NET架构的核心开发技术……