问题列表 - 第5890页

为什么 glCopyTexSubImage2D 不能正确复制我的方块?

这是输出: http: //i43.tinypic.com/9a5zyx.png

如果事情按照我想要的方式进行,左侧方块中的颜色将与右侧方块中的颜色相匹配。

#include <gl/glfw.h>

const char* title="test";
GLuint img;
unsigned int w=64,h=64;
int screenwidth,screenheight;

void enable2d()
{
    glMatrixMode(GL_PROJECTION);
    glPushMatrix();
    glLoadIdentity();

    glViewport(0,0,screenwidth,screenheight);
    glOrtho(0,screenwidth,screenheight,0,-1,1);

    glMatrixMode(GL_MODELVIEW);
    glPushMatrix();
    glLoadIdentity();

    glPushAttrib(GL_DEPTH_BUFFER_BIT|GL_LIGHTING_BIT);
    glDisable(GL_DEPTH_TEST);
    glDisable(GL_LIGHTING);

    glClearColor(0.0f, 0.0f, 0.0f, 0.5f);
}

void drawmytex()
{
    glEnable(GL_TEXTURE_2D);
    glBindTexture(GL_TEXTURE_2D,img);
    glBegin(GL_QUADS);
    glTexCoord2i(0,0);
    glVertex2i(0,0);
    glTexCoord2i(1,0);
    glVertex2i(w,0);
    glTexCoord2i(1,1);
    glVertex2i(w,h);
    glTexCoord2i(0,1);
    glVertex2i(0,h);
    glEnd();
    glDisable(GL_TEXTURE_2D);
}

void drawquad(int x,int y)
{
    glBegin(GL_QUADS);
    glColor3f(0.0f,1.0f,0.0f);
    glVertex2i(x,y);
    glColor3f(1.0f,0.0f,1.0f);
    glVertex2i(x+w,y);
    glColor3f(0.0f,1.0f,1.0f);
    glVertex2i(x+w,y+h);
    glColor3f(0.0f,0.0f,1.0f);
    glVertex2i(x,y+h);
    glEnd();
}

void texcopy()
{
    if (!glIsTexture(img))
        glDeleteTextures(1,&img);
    glGenTextures(1,&img);
    glBindTexture(GL_TEXTURE_2D,img);
    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
    glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,w,h,0,GL_RGBA,GL_UNSIGNED_BYTE,0);

    glMatrixMode(GL_PROJECTION); …
Run Code Online (Sandbox Code Playgroud)

c++ opengl 2d glfw

6
推荐指数
1
解决办法
2920
查看次数

处理 OpenGL 中的 alpha 混合以获得更好的性能

由于混合会影响我们游戏的性能,因此我们尝试了几种混合策略来创建混合的“幻觉”。其中之一是每隔奇数帧绘制一个精灵,导致精灵有一半的时间可见。效果还是不错的。(顺便说一句,你需要一个合适的帧速率,否则你的精灵会明显闪烁)

尽管如此,我想知道是否有任何好的见解可以避免混合,以便在不影响(太多)视觉体验的情况下提高整体性能。

opengl graphics performance alphablending

3
推荐指数
1
解决办法
3694
查看次数

使用PHP命令行界面发生奇怪的5秒暂停(与mysql/mysqli扩展相关)

从命令行PHP客户端(Windows上的PHP 5.2)执行PHP脚本时,我得到一个奇怪的5到7秒的暂停.

在此暂停期间,PHP脚本在返回命令提示符之前只显示"冻结"一段时间.它没有使用任何重要的CPU时间,就像它正在等待一些延迟.

在尝试使用PHP.ini之后,我将其缩小到了启用mysql或mysqli扩展的事实.如果这两个扩展都被禁用,没有恼人的暂停,PHP脚本只需几毫秒即可终止.

我正在使用的命令是:

"C:\Program Files\PHP\php.exe" -f %1
Run Code Online (Sandbox Code Playgroud)

其中%1是PHP脚本.

即使正在执行的PHP脚本基本上为空,仍会发生暂停:

<?php

?>
Run Code Online (Sandbox Code Playgroud)

你知道是什么导致这个暂停以及如何在命令行上允许mysql或mysqli支持PHP的同时删除它吗?

php windows command-line

6
推荐指数
1
解决办法
3059
查看次数

我在CS课程.我应该关注哪些编程主题?

这个时候最重要的是什么?我知道我以后可以获得编程经验.我毕业后应该学习以下哪一项才能成为优秀的程序员或分析师?

  • 数据结构
  • 算法
  • 软件工程
  • 低级方面
  • 设计模式和OO分析

[编辑]

谢谢你的回答.我想将其他重要主题作为其他学生的参考:

  • 同时编程
  • 操作系统

[/编辑]

注意:我认为列表中的第一项应该是学习英语

computer-science

4
推荐指数
2
解决办法
857
查看次数

我应该使用 ReAllocHGlobal 还是 FreeHGlobal/AllocHGlobal?

我所连接的旧数据库使用数据缓冲区将行传递给应用程序。为了在 C# 中处理这个问题,我编写了一个类,它提供了在缓冲区中读取和写入不同类型的方法。每个数据文件使用一个数据缓冲区,但必须为某些操作调整缓冲区的大小。为此,我添加了一个Allocate方法:

public void Allocate(int bytes) {
    if (handle != IntPtr.Zero) { // memory has already been allocated
        Marshal.FreeHGlobal(handle);
    }
    handle = Marshal.AllocHGlobal(bytes);
}
Run Code Online (Sandbox Code Playgroud)

然而,那是在我注意到ReAllocHGlobal之前。现在我想知道我是否应该这样做:

public void Allocate(int bytes) {
    if (handle != IntPtr.Zero) { // memory has already been allocated
        handle = Marshal.ReAllocHGlobal(handle, (IntPtr)bytes);
    } else { // this is a brand new data buffer
        handle = Marshal.AllocHGlobal(bytes);
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为第一种方法看起来更干净,但哪种方法最好用?我的第一个想法是ReAllocHGlobal最有意义(因为它专门用于调整现有内存块的大小),但我不能 100% 确定。

c# interop memory-management

2
推荐指数
1
解决办法
1947
查看次数

Silverlight 2.0加载问题

我为客户开发了一个SL2应用程序(其计算机通过组策略处于严重锁定状态).除了客户端之外,SL2应用程序对每个人都很好.

客户端正在使用WinXP + IE7并安装了SL2运行时.

在客户端的计算机上弹出以下错误:

Error: Unhandled Error in Silverlight
2 Application Code: 2103 Category:
InitializeError Message: 2103 An error
has occurred Code: 0
Run Code Online (Sandbox Code Playgroud)

客户端可以加载像http://silverlight.net这样的SLv1网站

客户端无法加载SLv2网站,例如:

客户看到的是一个空白的银色画布,但能够右键单击并调出silverlight首选项菜单.

alt text http://img6.imageshack.us/img6/1309/hardrockerror.jpg

有关如何调试此问题或有其他人遇到此问题的任何想法?

我应该补充一点,它在firefox下运行正常,但他们的IT部门不愿意将FF推广到所有机器上.环境必须是XP + IE7

标记:

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
            <param name="source" value="/ClientBin/RosterUI.xap"/>
            <param name="onerror" value="onSilverlightError" />
            <param name="background" value="white" />
            <param name="minRuntimeVersion" value="2.0.31005.0" />
            <param name="autoUpgrade" value="true" />
            <param name="scaleMode" value="zoom" />
            <a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">
                <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/>
            </a> …
Run Code Online (Sandbox Code Playgroud)

silverlight-2.0

6
推荐指数
1
解决办法
4146
查看次数

15
推荐指数
3
解决办法
7万
查看次数

ASP.NET MVC中的ModelFactory解决了'RenderPartial'问题

ASP.NET MVC中的'RenderPartial()'方法提供了非常低级别的功能.它没有提供,也没有尝试提供真正的"子控制器"模型*.

我通过'RenderPartial()'渲染了越来越多的控件.它们分为三大类:

1)控件是使用该页面模型的特定页面的直接后代

2)控件是特定页面的直接后代,该页面使用该页面的模型以及某种类型附加键.想想'DataRepeater'的实现.

3)代表它们出现的页面的不相关功能的控件.这可以是横幅旋转器,反馈表,商店定位器,邮件列表注册等任何内容.关键是它不关心它放在哪个页面上.

由于ViewData模型的工作方式,每个请求只存在一个模型对象 - 也就是说,子控件所需的任何内容都必须出现在页面模型中.

最终,MVC团队希望能够推出一个真正的"子控制器"模型,但在此之前,我只是在主控页面模型中添加任何内容,而这些模型也需要儿童控制.

在上面的(3)的情况下,这意味着我的'ProductModel'模型可能必须包含'MailingListSignup'模型的字段.显然这并不理想,但我已经接受了与当前框架的最佳妥协 - 并且最不可能"关闭未来的子控制器模型的任何门".

控制器应负责获取模型的数据,因为模型实际上应该是一个愚蠢的数据结构,不知道它从何处获取数据.但我不希望控制器必须在几个不同的地方创建模型.

我开始做的是创建一个工厂来创建模型.该工厂由控制器调用(模型不了解工厂).

public static class JoinMailingListModelFactory {

        public static JoinMailingListModel CreateJoinMailingListModel() {

            return new JoinMailingListModel()
            {
                MailingLists = MailingListCache.GetPartnerMailingLists();
            };
        }
    }   
Run Code Online (Sandbox Code Playgroud)

所以我的实际问题是,同样问题的其他人如何实际创建模型.什么是未来与新MVC功能兼容的最佳方法?


  • 注意:有些问题RenderAction()我不会进入这里 - 尤其是它只在MVCContrib中,而不是在ASP.NET-MVC的RTM版本中.其他问题引起了我选择不使用它的充分问题.所以我们假装现在只RenderPartial()存在 - 或者至少那就是我决定使用的东西.

asp.net-mvc renderpartial subcontroller

9
推荐指数
2
解决办法
1766
查看次数

文件的内存映射与CreateFile/ReadFile

使用内存映射文件读取(常规大小的文件)而使用CreateFile ReadFile组合执行相同操作有什么缺点(如果有的话)?

windows winapi memory-mapped-files

14
推荐指数
2
解决办法
5870
查看次数

什么时候应该使用字段而不是属性?

当你使用一个字段以及何时在课堂设计中使用一个属性时,任何人都能清楚地表达出来吗?

考虑:

public string Name;
Run Code Online (Sandbox Code Playgroud)

要么:

private string _Name;
public string Name
{
   get { return _Name; }
   set { _Name = value; }
}
Run Code Online (Sandbox Code Playgroud)

我意识到第二种方法更加合适和灵活,所以我通常会尝试使用它.

但那为什么我看到人们使用第一种方法呢?他们只是懒惰,还是有一些特定的情况,这是正确的选择?这只是一个偏好问题吗?

c# theory

10
推荐指数
2
解决办法
1724
查看次数