审阅我的游戏项目,或(如何同行审阅我的项目)?

问题描述 投票:1回答:2

我刚刚用C ++ / Allegro完成了一个2d平台游戏。它仍处于一个不完整的阶段...

我不知道如何进行游戏开发人员的同行评审。我想基于

审查我的项目
  1. 游戏
  2. 碰撞检测
  3. 使用OOP
  4. 声音,效果等的编程
  5. 任何其他想法
  6. 我本可以做得更好的方式
  7. 优化方式

当前代码在某些地方看起来像是垃圾,所以您还可以提出一些简化方法吗?

您可以在更新的链接上查看我的项目(如果需要)-nincompoop (direct link)

http://ideamonk.googlepages.com/nincompoop_distro.rar

截至目前,我切换到C#和XNA,发现它非常容易和快速,因为给我留下了深刻的印象-

http://catalog.xna.com/GameDetails.aspx?releaseId=341

我无意在这里销售任何产品或推广任何产品……我的意图是从更好的人那里获得使自己变得更好的技巧。至于我上载项目的页面,任何类型的广告均不支持该页面。因此请放心。

allegro
2个回答
3
投票

我在您的源代码中首先注意到的是,您的大部分游戏逻辑都位于main.cpp文件中,其中的嵌套多达11个选项卡!对于代码组织而言,这是一场噩梦。当然,我在第一场比赛中也是这样做的。 :)您可以做的第一件事是简化主游戏循环,使其看起来像这样:

int main () 
{
    game_object gob;
    gob.init_allegro();
    gob.load_assets();
    while(true) {
        gob.handle_inputs()
        if (!gob.update())
            break;
        gob.render();
    }
    gob.cleanup();
}

其他所有内容都应重构到您的game_object类中。这样管理起来会容易得多,因为您可以避免深层嵌套,所以您的代码实际上可能也适合页面。如果发现代码的深度超过3个标签,则您需要将所做的任何事情重构为另一个方法,甚至是一个单独的类。

我的第二个建议是将您的goto替换为更合理的东西,例如:

bool playerwins = check_win_condition();

if(playerwins) {
    // win condition code
} else {
    // lose condition code
}

1
投票

上一集中的RECAP-

我不明白为什么人们会否决您并发动进攻。保持良好的工作……– Daok(27分钟前)

要求同行评审时出了什么大错?想想在按下向下按钮之前,明天您可能也需要同行评审! – Abhishek Mishra(26分钟前)

@@ Daok:那就是58秒钟前我真正想知道的! – Abhishek Mishra(25分钟前)

这很愚蠢。这可能不适合SO问题的典型模样,但同行评审不是一件坏事,也不值得进攻,而不必多过4次否决。 – Thomas Owens(23分钟前)

@@ Mitchel Sellers:你知道吗,当我在从事这个项目时,就游戏开发进行了很好的讨论..因此,我认为最好将其放在评论中..但是@ stackoverflow ...事情真的很棒! ycombinator人群更加聪明,他们提出了惊人的反馈– Abhishek Mishra(21分钟前)

我认为这可能是问题的短语和基调。听起来更像是产品发布,而不是寻求帮助的问题。如果将其表述为“如何正确地对我的项目进行同行评审”等,那么人们可能就不那么苛刻了。 –马克·英格拉姆(21分钟前)

重点是,这不是堆栈溢出的用途。用于询问特定的技术问题。 – Remi Despres-Smyth(19分钟前)

呜呜...是的,当我键入问题时,它在我脑海中滚动...让我将其改写为REAL问题! :) – Abhishek Mishra(18分钟前)

而且本人还可以提供有关如何改进游戏的技术反馈。此外,我还要提供源代码以供审核!有什么办法可以再次打开一个问题? – Abhishek Mishra(17分钟前)

我已要求进行代码审查,并在此处收到。 Abhishek,如果有人重新打开它并且您可以对其进行编辑,请看以下问题:K & R Exercise: My Code Works, But Feels Stinky; Advice for Cleanup?作为代码审查问题示例。 –约翰·鲁迪(12分钟前)

@@ John:谢谢!希望它能工作!


0
投票

我只是喜欢这里有这么多人,如果他们觉得这个问题很愚蠢,就需要放下他们。如果有人要评论,为什么要这么消极。我意识到住在你妈妈的地下室里,没有生活会让你痛苦。我自己问了一个我需要帮助的问题,使我感到愚蠢。要求复审没有问题。如果有人告诉您,否则我不会关注。但也许是时候替换这个可怕的网站了!

© www.soinside.com 2019 - 2024. All rights reserved.