广东人在上海

 找回密码
 我要注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 1069|回复: 4

招聘高级3D软件工程师。

[复制链接]
发表于 2010-7-15 00:17:16 | 显示全部楼层 |阅读模式
求职&招聘
职位: 高级OpenGL,3D程序员,网络程序员
工作地点: 上海
公司名称: 江苏甲子网络科技有限公司 上海分公司
本帖最后由 huawenguang 于 2010-7-15 12:20 AM 编辑

高级OpenGL,3D程序员


要求:

1、精通C/C++,OpenGL编程,对DLL开发有足够的认识。

2、对各种3D数学理论有较深入的认识和理解。

3、对2D数字图像处理有一定的认识。

3、有Maya  API插件开发经验的优先。

4、有对后期合成软件Nuke插件开发经验的优先。

5、有在影视动画公司担任过TD职务的优先。

5、应聘者请在个人简历中附上你的作品,并注明工资期望。



以下是几道相关的题目,你可以选其中一两道来做,当然你如果能全部完成,那被录用的概率也会大增。代码要求用C++来写,并且要能通过编译及运行,附上必要的算法说明文字。

所有相关数据能在下面这个连接中下载到:

http://www.fiist.com/job/JOB2010.rar

//============================================================================

(一)、这里有一个记录波形数字采样的文件wave.segy ,记录的情况如下图所示:


一共有901道波形数据,每道数据有512个采样值。要求把这些数据读取出来,然后把这些波形用OpenGL绘制出来,可以考虑用多种绘制方案,如曲线或转换成纹理。




读取这些数据的的代码如下:


#include <fstream>

#include <iostream>

using namespace std;


int main()

{

  int i,j,ns,ntr;

  float data;

  ifstream infile;

  infile.open("model.segy",ios::binary);

  ntr = 901;   //Segy文件总道数

  ns = 512;  //Segy文件的采样点

  infile.seekg(3600,ios::beg);    //跳过3600字节的卷头

  for(i=0;i<ntr;i++){

      infile.seekg(240,ios::cur); //跳过240字节的道头

      for(j=0;j<ns;j++){

          infile.read((char*)&data,sizeof(float));

          //读取每个采样点的数据,格式为float类型

          cout<<data<<"\n";

      }

  }

  infile.close();

  return 0;

}



//======================================================================

(二)写一个基于MAYA API的命令插件,用来判断一个mesh模型是否是组合模型,是返回1,否返回0,如果你还不会写MAYA插件,用文字写一份详细的算法说明也可以。


所谓组合模型是指原本两个独立的mesh模型,通过MAYACombine命令把它们合并成一个mesh,我们还可以用separate命令来把它们重新分开。


两个模型被组合在成一个mesh

如何快速判断它们是组合体而不是两个独立的模型。我们可以取到的数据有所有顶点组成的顶点数组,边数组(每条边包含两个顶点的索引),面数组(每个面包含三个顶点的索引)

struct Point

{

         float x,y,z;

}

std::vector<Point> mPointArray; //两个被组合的模型的所有顶点都放在一个数组里了。


struct Edge

{

         int indexA; //这是基于mPointArray数组的索引

         int indexB;

}


std::vector<Edge> mEdgeArray; //所有的边


struct Triangle

{

         int index1;

         int index2; //同样是基于顶点数组的

         int index3;

}


std::vector<Triangle> mTrangleArray ;//所有的面



//==========================================================================

(三)有四张iff格式的图像,iffMAYA独有的一种2D图像文件格格式,要求用C++写一个程序,把这四张iff图像组合成一张完整的图像,你可以用MAYA自带的ilib,flib来实现,也可以完全自已写代码来处理,这里MAYA文档中附带有iff文件格式的详细说明



  

  



(四)写一个基于OpenGL的程序,能实现对3D场景的旋转、缩放等基本功能,然后在场景中间有一个球,这个球能实时反射周围场景的所有内容。如下图所示,当然,我们要的不仅仅是对一个天空盒的反射,而是对整个场景中所有模型的一个实时镜面反射。

场景你可以在网上下载任何一个简单的场景就可以。要求必须用OpenGL来实现,不要用现有的某些游戏引擎来做。


Updata time 2010/7/15



//************************************************************************************************

//******************************************************************************************************



岗 位2: 网络程序员  

要求:
1、 熟悉html,js,css,有企业网站后台建设经验、独立开发过网站;
2、熟练掌握asp 、PHP  编程技术;
3、熟练掌握 SQL Server 或者 Oracle 数据库技术;
4、有大型网站开发经验者优先,要求提供作品;
5、熟悉php+mysql者优先;
6、熟练使用Fireworks、photoshop、corelDRAW等图片处理软件者优先;
8、有WebGL 3D网页开发经验优先;
7、思维敏捷,善于沟通,踏实肯干,为人正直,工作认真、细心,具有较强的协调沟通能力 ,具备良好的团队合作精神 。  

联系:huawenguang@sina.com
 楼主| 发表于 2010-7-15 00:22:38 | 显示全部楼层

要求有点高,但我相信这论坛里也一定藏龙卧虎。
回复 支持 反对

使用道具 举报

发表于 2010-7-15 00:25:55 | 显示全部楼层
C++不熟悉

专业帮顶~~~
:dabin15
回复 支持 反对

使用道具 举报

发表于 2010-7-15 12:35:46 | 显示全部楼层
3D是负责什么设计
模型?
回复 支持 反对

使用道具 举报

发表于 2010-7-15 21:48:10 | 显示全部楼层
暈哦 好複雜啊

看來 我是外行人咯
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

QQ|本网站由上海海甘信息技术有限公司免费提供空间和技术支持|手机版|Archiver|沪ICP备09046996号-6|广东人在上海

GMT+8, 2024-5-17 11:10 PM , Processed in 0.735319 second(s), 18 queries , Gzip On, WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表