当前位置: 首页>>代码示例>>Golang>>正文


Golang C.H3DNode函数代码示例

本文整理汇总了Golang中C.H3DNode函数的典型用法代码示例。如果您正苦于以下问题:Golang H3DNode函数的具体用法?Golang H3DNode怎么用?Golang H3DNode使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了H3DNode函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: AddMeshNode

func (parent H3DNode) AddMeshNode(name string, materialRes H3DRes, batchStart int, batchCount int,
	vertRStart int, vertEnd int) H3DNode {
	cName := C.CString(name)
	defer C.free(unsafe.Pointer(cName))
	return H3DNode(C.h3dAddMeshNode(C.H3DNode(parent), cName, C.H3DRes(materialRes), C.int(batchStart),
		C.int(batchCount), C.int(vertRStart), C.int(vertEnd)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3d.go

示例2: PickRay

func PickRay(cameraNode H3DNode, nwx float32, nwy float32, ox *float32, oy *float32, oz *float32,
	dx *float32, dy *float32, dz *float32) {
	C.h3dutPickRay(C.H3DNode(cameraNode), C.float(nwx), C.float(nwy), (*C.float)(unsafe.Pointer(ox)),
		(*C.float)(unsafe.Pointer(oy)), (*C.float)(unsafe.Pointer(oz)),
		(*C.float)(unsafe.Pointer(dx)), (*C.float)(unsafe.Pointer(dy)),
		(*C.float)(unsafe.Pointer(dz)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3dUtils.go

示例3: AABB

func (node H3DNode) AABB(minX *float32, minY *float32, minZ *float32,
	maxX *float32, maxY *float32, maxZ *float32) {
	C.h3dGetNodeAABB(C.H3DNode(node), (*C.float)(unsafe.Pointer(minX)),
		(*C.float)(unsafe.Pointer(minY)), (*C.float)(unsafe.Pointer(minZ)),
		(*C.float)(unsafe.Pointer(maxX)), (*C.float)(unsafe.Pointer(maxY)),
		(*C.float)(unsafe.Pointer(maxZ)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3d.go

示例4: AddEmitterNode

func (parent H3DNode) AddEmitterNode(name string, materialRes H3DRes, particleEffectRes H3DRes,
	maxParticleCount int, respawnCount int) H3DNode {
	cName := C.CString(name)
	defer C.free(unsafe.Pointer(cName))
	return H3DNode(C.h3dAddEmitterNode(C.H3DNode(parent), cName, C.H3DRes(materialRes),
		C.H3DRes(particleEffectRes), C.int(maxParticleCount), C.int(respawnCount)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3d.go

示例5: Transform

func (node H3DNode) Transform(tx *float32, ty *float32, tz *float32,
	rx *float32, ry *float32, rz *float32, sx *float32, sy *float32, sz *float32) {
	C.h3dGetNodeTransform(C.H3DNode(node), (*C.float)(unsafe.Pointer(tx)), (*C.float)(unsafe.Pointer(ty)),
		(*C.float)(unsafe.Pointer(tz)), (*C.float)(unsafe.Pointer(rx)), (*C.float)(unsafe.Pointer(ry)),
		(*C.float)(unsafe.Pointer(rz)), (*C.float)(unsafe.Pointer(sx)), (*C.float)(unsafe.Pointer(sy)),
		(*C.float)(unsafe.Pointer(sz)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3d.go

示例6: SetupModelAnimStage

func SetupModelAnimStage(modelNode H3DNode, stage int, animationRes H3DRes, layer int,
	startNode string, additive bool) {
	cStartNode := C.CString(startNode)
	defer C.free(unsafe.Pointer(cStartNode))
	C.h3dSetupModelAnimStage(C.H3DNode(modelNode), C.int(stage), C.H3DRes(animationRes),
		C.int(layer), cStartNode, Int[additive])
}
开发者ID:floffel03,项目名称:gohorde,代码行数:7,代码来源:horde3d.go

示例7: AddLightNode

func (parent H3DNode) AddLightNode(name string, materialRes H3DRes, lightingContext string,
	shadowContext string) H3DNode {
	cName := C.CString(name)
	defer C.free(unsafe.Pointer(cName))
	cLightingContext := C.CString(lightingContext)
	defer C.free(unsafe.Pointer(cLightingContext))
	cShadowContext := C.CString(shadowContext)
	defer C.free(unsafe.Pointer(cShadowContext))

	return H3DNode(C.h3dAddLightNode(C.H3DNode(parent), cName, C.H3DRes(materialRes), cLightingContext,
		cShadowContext))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:12,代码来源:horde3d.go

示例8: TransMats

func (node H3DNode) TransMats(relMat *[16]float32, absMat *[16]float32) {
	var rel **C.float
	var abs **C.float

	if relMat != nil {
		rel = (**C.float)(unsafe.Pointer(&relMat[0]))
	}
	if absMat != nil {
		abs = (**C.float)(unsafe.Pointer(&absMat[0]))
	}

	C.h3dGetNodeTransMats(C.H3DNode(node), rel, abs)

	if relMat != nil {
		C.CopyFloatArray(*rel, (*C.float)(&relMat[0]), 16)
		//prepSlice(unsafe.Pointer(&relMat), unsafe.Pointer(*rel), 16)

	}
	if absMat != nil {
		C.CopyFloatArray(*abs, (*C.float)(&absMat[0]), 16)
		//prepSlice(unsafe.Pointer(&absMat), unsafe.Pointer(*abs), 16)
	}
}
开发者ID:floffel03,项目名称:gohorde,代码行数:23,代码来源:horde3d.go

示例9: FindNodes

func FindNodes(node H3DNode, name string, nodeType int) int {
	cName := C.CString(name)
	defer C.free(unsafe.Pointer(cName))
	return int(C.h3dFindNodes(C.H3DNode(node), cName, C.int(nodeType)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:5,代码来源:horde3d.go

示例10: SetFlags

func (node H3DNode) SetFlags(flags int, recursive bool) {
	C.h3dSetNodeFlags(C.H3DNode(node), C.int(flags), Int[recursive])
}
开发者ID:floffel03,项目名称:gohorde,代码行数:3,代码来源:horde3d.go

示例11: Parent

func (node H3DNode) Parent() H3DNode {
	return H3DNode(C.h3dGetNodeParent(C.H3DNode(node)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:3,代码来源:horde3d.go

示例12: SetNodeParamStr

func (node H3DNode) SetNodeParamStr(param int, value string) {
	cValue := C.CString(value)
	C.free(unsafe.Pointer(cValue))
	C.h3dSetNodeParamStr(C.H3DNode(node), C.int(param), cValue)
}
开发者ID:floffel03,项目名称:gohorde,代码行数:5,代码来源:horde3d.go

示例13: Flags

func (node H3DNode) Flags() int {
	return int(C.h3dGetNodeFlags(C.H3DNode(node)))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:3,代码来源:horde3d.go

示例14: SetNodeParamF

func (node H3DNode) SetNodeParamF(param int, compIdx int, value float32) {
	C.h3dSetNodeParamF(C.H3DNode(node), C.int(param), C.int(compIdx), C.float(value))
}
开发者ID:floffel03,项目名称:gohorde,代码行数:3,代码来源:horde3d.go

示例15: NodeParamStr

func (node H3DNode) NodeParamStr(param int) string {
	value := C.h3dGetNodeParamStr(C.H3DNode(node), C.int(param))
	return C.GoString(value)
}
开发者ID:floffel03,项目名称:gohorde,代码行数:4,代码来源:horde3d.go


注:本文中的C.H3DNode函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。