Opengl 什么是表示真和假的布尔值?

Opengl 什么是表示真和假的布尔值?,opengl,haskell,Opengl,Haskell,我正在使用Haskell的OpenGL.Raw库,我希望使用GLboolean值来表示true和false,但它们似乎没有在库中预定义。我自己如何定义这些值 OpenGL库中用于此的两个函数是(在内部模块GLBoolean中) GLBoolean是Num-typeclass的一个实例,但是您需要在使用OpenGL函数的每个地方转换正常的Bool值。如果您不想在每个地方都转换它,那么可以使用以下方法 gTrue, gFalse :: Num a => a gTrue = fromIntegr

我正在使用Haskell的OpenGL.Raw库,我希望使用GLboolean值来表示true和false,但它们似乎没有在库中预定义。我自己如何定义这些值

OpenGL库中用于此的两个函数是(在内部模块GLBoolean中)

GLBoolean
是Num-typeclass的一个实例,但是您需要在使用OpenGL函数的每个地方转换正常的
Bool
值。如果您不想在每个地方都转换它,那么可以使用以下方法

gTrue, gFalse :: Num a => a
gTrue = fromIntegral gl_TRUE
gFalse = fromIntegral gl_FALSE
但缺点是不能使用正常的布尔运算,如
&&
|

或者您可以让OpenGL库为您进行包装,这也带来了一些类型安全性和一个可能更好的界面。

OpenGL库中用于此的两个函数是(在内部模块GLBoolean中)

GLBoolean
是Num-typeclass的一个实例,但是您需要在使用OpenGL函数的每个地方转换正常的
Bool
值。如果您不想在每个地方都转换它,那么可以使用以下方法

gTrue, gFalse :: Num a => a
gTrue = fromIntegral gl_TRUE
gFalse = fromIntegral gl_FALSE
但缺点是不能使用正常的布尔运算,如
&&
|
。 或者你可以让OpenGL库为你做包装,这也带来了一些类型安全性和一个可能更好的界面