• idnemo

  • 致力于游戏开发~~
  • 首页
  • 碎语
  • 登录
  • 自动生成头文件信息的宏

    post by idnemo / 2010-8-26 13:41 Thursday


    #Region "Field"

    Public strDate As String = Format(Date.Now, " yyyy/MM/dd HH:MM:ss")

    Public strName As String = DTE.ActiveDocument.Name

    Public strModifier As String = "Crane Shen"

    #End Region
     

    #Region "Add code file header"

    Sub FileHeader()

    DTE.ActiveDocument.Selection.Text = " /*"

    DTE.ActiveDocument.Selection.NewLine(1)

      DTE.ActiveDocument.Selection.Text = "Copyrigth 2010 Company All rigths reserved"

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "File Name: " & strName

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "Created By: " & strModifier

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "Created Date: " & strDate

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "Description: " & strDate

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "Change History: ID ModifiedBy ModifiedDate Desciption"

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.NewLine(1)

    DTE.ActiveDocument.Selection.Text = "*/"

    End Sub

    #End Region

     

    标签: 游戏开发
    评论(1) 引用(0) 浏览(27)
  • 记录下这个幸福的日子

    post by idnemo / 2010-7-23 22:38 Friday

    正式进入一个AAA级别的大作开发。而今天一天从我身上洋溢出的幸福,让同事们都觉得是我喝高了。

    要努力。。。加油!!!!!!

    标签: 游戏开发
    评论(3) 引用(0) 浏览(99)
  • 独立游戏

    post by idnemo / 2009-9-27 15:38 Sunday

    大概在1个多月前,我计划了下半年应该做什么,其实那时候的目标就是能进一家做console游戏的公司。
    然而似乎有些运气的成分吧,仅仅1个月就进了2K,目标提前实现,而且附带着圆了以前的梦。乐呵了大半个月,跟同学同事喝酒吃饭侃大山,现在一时却不知道下一步该做什么了。大学里我很晚才去钻编程,基础也一般,再加上用的语言又是号称能促使脑死亡的C++,所以工作的两年里基本上都是在积累。积累C++,积累架构引擎知识,积累设计模式,积累3D数学。其实,我到现在脑子都还有点乱。

    是该做点自己的东西了。

    写这篇文章为自己理一下头绪,同时也算是给那些希望进入游戏业的学生们提供一些建议吧。

    我有一个非常有创意的想法,我可以把它做成游戏吗?
    首先,最重要的是判断实现这个游戏的规模。这一点,一开始可能很难看清,那么把你的创意再丰富一下,成为一篇粗略的设计文档,不需要很专业,但是需要把你应该展现出来的游戏性都加入其中。
    完成初步的设计之后,你应该就能看出这个游戏规模了。如果此时你发现这个游戏的复杂程度已经接近WOW,战神,星际争霸这样级别的了,你可以有两种选择:1,把这个创意放到心里,等待可以有一个团队帮你实现的那一天。2,做成一个demo。
    限制你的游戏规模,清楚自己最想做的,是你要做的第一件事。只有能“舍”才有“得”。在我看来,可以有两种选择:
    Demo级,只是对自己创意和游戏玩法的初步实现,demo可能会很粗糙,但是整个游戏本身的规模可以很大。
    小游戏级,这至少是一个完整的游戏,可以成为商业的游戏卖钱,但是可能游戏性和游戏提供的挑战有限。你觉得自己一个人就可以把它做出来。

    现在就进入第二个抉择了,该用什么来实现这个游戏?

    阅读全文>>

    标签: 游戏开发
    评论(5) 引用(0) 浏览(4200)
  • Excel列字母与数字的转换,C#实现

    post by idnemo / 2009-9-24 7:58 Thursday

    今天写工具时碰到的问题,贴出来分享一下       

    //用于excel表格中列号字转成数字,返回的列号索引从1开始
            public  int ToIndex(string columnName)
            {
                if (!Regex.IsMatch(columnName.ToUpper(), @"[A-Z]+"))
                    throw new Exception("Invalid parameter");
                int index = 0;
                char[] chars = columnName.ToUpper().ToCharArray();
                for (int i = 0; i < chars.Length; i++)
                {
                    index += ((int)chars[i] - (int)'A' + 1) * (int)Math.Pow(26, chars.Length - i - 1);
                }
                return index;
            }

            //用于将数字转成excel表格中列号字母,返回的列号索引从A开始,从A对应1开始
            public string ToName(int index)
            {
                if (index <= 0)
                    throw new Exception("invaild parameter");
               
                index--;
                List<string> chars = new List<string>();
                do
                {
                   if (chars.Count > 0)
                       index--;
                    chars.Insert(0, ((char)(index % 26 + (int)'A' )).ToString());
                    index = (int)((index - index % 26) / 26);
                } while (index > 0);
               
                return String.Join(string.Empty, chars.ToArray());
            }

    标签: 游戏开发
    评论(0) 引用(0) 浏览(4629)
  • 梦想实现的一刻……

    post by idnemo / 2009-9-9 15:38 Wednesday

    今天下午接到了2k Games给的offer,兴奋的我立即告诉了所有的那些游戏朋友还有同学。如果说几年以前,能想得到有朝一日和席德梅尔同处于一个游戏公司,如果有机会在《Bioshock》、《文明》的制作人员名单上留下自己的名字,可能大学里的我天天都能笑醒。

    如果说耐心是一种美德,我很幸运拥有它。因为在这个有些浮躁的年代,我一直坚持着自己的内心深处的渴望。

    从今年2月份开始就时不时的给2K投简历,一封封都是石沉大海,没有回音。但是我相信自己的能力,很可能只是那边不缺人而已。终于,9月份的时候终于等到2K招人了。也许主管和HR都看出了我对能进入2K的渴望吧,2次面试顺利通过,人生的第二个梦想实现了。

    我喜欢这样的追梦旅程:随心而动,自由自在。

    另一个故事:2008年1月,阿森纳中场罗西基在和纽卡斯尔的比赛拉伤,其后动过2次手术,一度传出他有可能会像代斯勒一样提前退役,然而20个月之后,他终于在捷克对圣马力诺的世界杯预选赛中正式复出了。巧合的是,罗西基受伤时正是我刚来灵禅的时候,而他复出的那一天正是今天。

    标签: 游戏开发
    评论(4) 引用(0) 浏览(4169)
  • C++与C#的不同(三)

    post by idnemo / 2008-8-10 5:21 Sunday

    最后一次更新C#的内容。貌似内容不多。

    推荐一个挪威乐队Flunk,背景音乐是他们的一首歌<sit down>。

    3、其他
    C#不能重载索引操作符[],所以提供了索引器属性访问数组。
    C#的泛型与C++模板的语法和使用都很相似。C#的集合类似C++的容器,自定义集合类似自定义模板。
    C#中string是一种正常的类型,而不是字符数组。
    C#中并非任何异常都能作为异常抛出,异常对象必须从System.exception。
    C#的委托有点和C++的函数指针或成员函数指针相似。
     

    标签: 游戏开发
    评论(1) 引用(0) 浏览(3844)
  • C++与C#的不同(二)

    post by idnemo / 2008-6-29 2:03 Sunday

    因为本月的欧洲杯,已经请了两天的休假,再请我自己都不好意思了。但是有又想看啊,矛盾ing……

    这个星期更新编程的内容。下个星期更新游戏评论。

    2、面向对象
    C#中没有复制构造方法,复制的语义通过实现ICloneable接口获得。
    C#通过垃圾回收系统管理所有内存,所以new过之后不需要delete操作符。而在对象超过作用域时,勿需调用析构方法。
    如要让值以引用方式传递给函数,需在调用和目的地两处指定ref。
    C#中没有私有或保护继承。这证实了这两种继承的无用性。
    C#中必须显式用关键字override标记表示重新定义虚函数。new关键字表明不重定义虚函数,也就是说这是一个新的虚函数。
    也就是说,必须使用override关键字来实现多态。
    C#使用单类层次的单一继承,所有类都继承自object基类,而且不可能多重继承。但是C#的接口提供了多重继承的功能,接口的作用是混入其他继承树,虽然这显得很有弹性,但也会制造出混乱。
    关于多重继承和单继承的争论也是C++社群争论的一个焦点,一派说要用,一派不用。如果要使用,也得明智而审慎的使用。
    C#不能创建非静态操作符,且二元操作符必须有两个操作数。
    C#要求重载操作符必须配对,如==和!=,<和>等等。
    C#的结构体是值类型,类是引用类型。
    因为C#是值类型,所以即可以new出来,也可以直接创建。类是引用类型,只能new出实例。
    而C++的类和结构体除了默认属性一个为private,一个为public外,完全相同。

    标签: 游戏开发
    评论(0) 引用(0) 浏览(3780)
  • C++与C#的不同(一)

    post by idnemo / 2008-5-31 5:29 Saturday

    公司里棋牌游戏的服务端是用C#写的,所以要求我们每个写游戏的必须C++和C#都得会。我对C#比较感兴趣的还有一个原因就是XNA,这个应该会比DX更好用的图形接口。当然现在还完全没有接触过,但是以后一定会去学一下。C#学的时间不长,所以只写写一些基本的语法区别,不会去涉及C#写的应用程序或WEB程序。

    与C、C++的区别,说C++就是说C了,因为C是C++的完全子集。
    1、语言基础
    C#类定义的结束大括号后面没有分号,加上1个也可以编译。
    C#的Main()首字母大写,必须是一个类的成员(静态的),不是全局成员。这使得C#成为完全面向对象的语言。
    C#的命名空间是用.操作符来界定,而C++是用作用域解析操作符::。
    C#分值类型和引用类型,通常的,值类型在栈分配,引用类型的地址在栈中,实际对象在堆中。当然,这句话并非绝对的,要根据实际情况来判别。
    所有内置类型除了Object和string都是值类型,所有用户自定义类型除了结构体和枚举类型外都是引用类型。
    C#没有明确表示对象是引用类型,就是说不使用&操作符。
    C#在托管堆中默认维护了一个指针,所以指针在C#在托管状态下是用不着的。只有在非托管代码下才会使用指针。
    C#的布尔变量值只能为true或false,整数不能等于布尔值,而且不存在隐含转换。
    C#的所有变量在使用之前必须定义,这会受编译器检查,给出错误。而C++对未初始化的值只会给出警告。
    微软为C#制定了编程风格规则,推荐使用Camel和Pascal记号法,不再推荐匈牙利记号法。
    C#的枚举和整数之间转化都需要显式进行。C++中将枚举对整数赋值的转化是隐式的。
    C#需要所有条件表达式都必须为布尔值,C++则可以使用任何表达式。即0为假,非0为真。
    C#预处理器只实现了C++预处理器的一个子集,不支持宏。

     

    标签: 游戏开发
    评论(0) 引用(0) 浏览(3687)
  • 我的C++笔记(八)

    post by idnemo / 2008-5-24 2:36 Saturday

    好了,最后更新一次C++部分,也许以后是C#,也有可能是C++泛型算法。

    C++的异常处理机制包括两部分:异常的识别与发出,异常的处理方式。异常出现时,正常程序的执行被悬置。异常处理机制开始搜寻程序中有能力处理异常的地点。异常被处理后,程序才重新激活。
    throw表示式用于抛出异常。异常就是某种对象,最简单可以是整数或者字符串,大部分属于特定的异常类
    利用单一或连串的catch子句来捕捉被抛出的异常对象。catch子句由三部分组成:catch,小括号内的一个类型或对象,大括号内的一组语句(用于处理异常)。
    catch(int err)
    {}
    异常对象的类型和小括号的类型进行比较,决定进入哪个异常处理。
    也可以用catch(...)捕捉任何异常。
    catch子句与try块相应而生。先try,再catch。try块只对当前块内的异常进行捕捉,它无法捕捉其调用的子函数内的异常。
    在try块内throw异常,然后寻找相应的catch块进行处理。
    C++规定,每个异常都应该被处理。如果一直找不到合适的catch子句,便调用标准程序库的terminate(),其默认行为是中止真个程序的运行。
    在异常处理机制终结某个函数之前,c++保证,函数中的所有局部对象的析构函数都会被调用。
    auto_ptr是标准程序库提供的类模板,会自动delete通过new表达式配置的对象。使用前,需含入<memory>。
    如果new无法从自由空间(free store)中配置到足够内存,它会抛出bad_alloc异常对象。

    标签: 游戏开发
    评论(0) 引用(0) 浏览(3991)
  • 我的C++笔记(七)

    post by idnemo / 2008-4-22 13:03 Tuesday

    呃,好久没更新C++了,不过也快更新完了。说实话,我对于泛型编程(GP)也不是很了解,除了用STL之外,自己很少去写模板。模板类的用户,通常是应用程序员。也许对于写底层库的程序员来说,泛型编程才会经常接触吧。

    实现自己的模板(template)
    类模板成员函数的定义语法:
    template <typename elemtype>
    BinaryTree<elemtype>::BinaryTree(const BinaryTree&){}
    //BinaryTree是类名,在前面加了BinaryTree<elemtype>::作用域后,后面的都不需要再加了
    正确编译模板类的方法:
    1、因为模板实例化需要看到模板的定义,而不仅仅是声明。所以模板类的定义全部放在头文件中。这种叫做包含编译模型(见C++PRIMER p543)。
    当然,可以在头文件中的最后包含源文件,这样可使得定义和声明分开。不过工程中就不能添加这个.cpp了,因为这个.cpp编译通不过。其实就是在头文件的最后include进去就可以了。
    2、分开头文件和源文件,在main中包含源文件
    3、使用分别编译模型,export关键字目前VC不支持。

    阅读全文>>

    标签: 游戏开发
    评论(0) 引用(0) 浏览(4269)
1 2 3
  • blogger

      blogger
    • idnemo
    • 目前供职于2k Games,Take-Two的子公司。非常荣幸为这样的公司工作。 MAIL:shenheshen@163.com QQ:64183074 MSN:idnemo@hotmail.com
  • 标签

    • 游戏 牢骚 音乐 电影 游戏开发 足球
  • 日历

  • 随机日志

    • 我的C++笔记(三)
    • 梦想实现的一刻……
    • 靠,wii
    • 女神异闻录3,BT……
    • 破解
    • 夜,真相
    • 啊,啊,啊……
    • 近况,还有一年的总结
  • 最新碎语

    • The submarines的 vote,好听!

      2008-11-02 07:42

    • 换了背景音乐

      2008-08-10 05:15

    • 欧洲杯,只有周末能看了

      2008-06-18 13:31

    • 悼念死者。

      2008-05-18 11:48

    • 弄了个Skype,可以用本本和PSP打电话了

      2008-05-10 06:01

    • 更多»

  • 最新评论

    • edhardyclothing
      嗯嗯 这部电影还可以 值得一看
    • 小小天
      楼主,能问问你,在客户端和服务端发送和接收上面的数据包的代码是什么样的吗?本人是个编程菜鸟,只知道怎么send和recv字符串,现在要用到网络收...
    • 丁字裤
      沙发~
    • 连衣裙
      沙发
    • idnemo
      哈,机密。。。
    • 用手打字
      大型游戏?
    • 小妖
      AAA级大作 ?? 透露一下
    • 网络赚钱方法
      评价的太精辟,确实如此。
    • 武汉
      好,顶上!
    • 丁字裤
      强人呀!
    • 淘宝网批发
      武汉挺好的,哈哈
    • 最好的减肥药
      还没看
    • Wikipedia YouTube
      A Ss was incredible? http://en.wikipedia.org/wiki/Youtube - Wikipedia YouTube <a href="http://en.wikipedia.org/wiki/Youtube">Wikipedia YouTube</a>
    • 美国优洛
      看了,还可以
    • 农民
      “Get a Room.”让我想起那年夏天,在中山,牵着女朋友每到一处都说没房。
  • 链接

    • emlog
    • 我的豆瓣
  • 存档

    • 2010年8月(3)
    • 2010年7月(1)
    • 2010年6月(1)
    • 2010年5月(1)
    • 2010年4月(3)
    • 2010年3月(1)
    • 2010年2月(3)
    • 2009年11月(1)
    • 2009年10月(1)
    • 2009年9月(3)
    • 2009年8月(1)
    • 2009年4月(1)
    • 2009年3月(1)
    • 2009年2月(2)
    • 2009年1月(1)
    • 2008年12月(1)
    • 2008年11月(1)
    • 2008年10月(2)
    • 2008年9月(1)
    • 2008年8月(4)
    • 2008年7月(2)
    • 2008年6月(4)
    • 2008年5月(5)
    • 2008年4月(4)
    • 2008年3月(4)
    • 2008年2月(4)
    • 2008年1月(4)
    • 2007年12月(5)
    • 2007年11月(5)
    • 2007年10月(5)
    • 2007年9月(7)
  • 搜索

  • 信息

    • 日志数量:82
    • 评论数量:181
    • 引用数量:3
    • 今日访问:286
    • 总访问量:404818
  • 豆瓣

订阅Rss
Powered by emlog