查看: 7216|回复: 18

《OpenSceneGraph Cookbook》计划写作目录

[复制链接]

该用户从未签到

发表于 2011-4-12 13:17:12 | 显示全部楼层 |阅读模式

新书《OpenSceneGraph Cookbook》即将纳入写作日程,本书依然由Packt Publishing约稿和出版。预计明年初全球发行。本书的内容将是:针对OSG开发的方方面面的100个例子!

这里将我的写作计划列出,非常欢迎和希望大家给出意见,替换掉大家认为用途不大的例子,换成对更多人有用和有意思的题目~~


1, Prepare development tools, CUSTOMZING OPENSCENEGRAPH, Simple

2, Check out the latest version, CUSTOMZING OPENSCENEGRAPH, Simple

3, Configure CMake options, CUSTOMZING OPENSCENEGRAPH, Intermediate

4, Build common plug-ins and examples, CUSTOMZING OPENSCENEGRAPH, Intermediate

5, Compile and use OSG on different platforms, CUSTOMZING OPENSCENEGRAPH, Intermediate

6, Compile and use OSG on mobile devices, CUSTOMZING OPENSCENEGRAPH, Advanced

7, Compile and use dynamic and static libraries, CUSTOMZING OPENSCENEGRAPH,Advanced

8, Create your project using CMake, CUSTOMZING OPENSCENEGRAPH, Wow

9, Build and run a simple program, CUSTOMZING OPENSCENEGRAPH, Intermediate

10, Use smart and observer pointers, DESIGNING THE SCENE GRAPH, Simple

11, Share and clone nodes, DESIGNING THE SCENE GRAPH, Simple

12, Compute the bounding box of any node, DESIGNING THE SCENE GRAPH, Intermediate

13, Compute coordinates in any reference frame, DESIGNING THE SCENE GRAPH,Intermediate

14, Use draw callbacks to execute OpenGL calls, DESIGNING THE SCENE GRAPH,Intermediate

15, Design a breadth-first node visitor, DESIGNING THE SCENE GRAPH, Advanced

16, Implement a background image node, DESIGNING THE SCENE GRAPH, Advanced

17, Make your node always face to screen, DESIGNING THE SCENE GRAPH, Intermediate

18, Implement a compass node, DESIGNING THE SCENE GRAPH, Advanced

19, Render a model in 'solid + wireframe' mode, DESIGNING THE SCENE GRAPH,Advanced

20, Design a new culling algorithm for specified nodes, DESIGNING THE SCENEGRAPH, Wow

21, Draw a polygon with borderlines, EDITING GEOMETRY MODELS, Simple

22, Display model information texts, EDITING GEOMETRY MODELS, Simple

23, Extrude a 2D shape to 3D, EDITING GEOMETRY MODELS, Intermediate

24, Extrude a 2D shape in shaders, EDITING GEOMETRY MODELS, Advanced

25, Draw a dynamic clock on the screen, EDITING GEOMETRY MODELS, Intermediate

26, Draw a ribbon following the mouse cursor, EDITING GEOMETRY MODELS,Advanced

27, Design simple 3D buttons, EDITING GEOMETRY MODELS, Advanced

28, Select a model and display the geometry structure, EDITING GEOMETRYMODELS, Intermediate

29, Select a triangle face of the model, EDITING GEOMETRY MODELS, Advanced

30, Select a point of the model and highlight it, EDITING GEOMETRY MODELS, Wow

31, Enable anti-aliasing, MANIPULATING THE VIEW, Simple

32, Implement a bird's eye view, MANIPULATING THE VIEW, Intermediate

33, Display the top, front and side views of a model, MANIPULATING THE VIEW,Advanced

34, Use slave cameras to simulate a power-wall, MANIPULATING THE VIEW, Intermediate

35, Setup views on multiple screens, MANIPULATING THE VIEW, Intermediate

36, Project your scene to a dome, MANIPULATING THE VIEW, Advanced

37, Obtain and change the view matrix in callbacks, MANIPULATINGTHE VIEW, Simple

38, Design a jump-to-anywhere manipulator, MANIPULATING THE VIEW, Intermediate

39, Manipulate the camera with joysticks, MANIPULATING THE VIEW, Wow

40, Open and close the door, ANIMATING EVERYTHING,Simple

41, Play a movie in 3D world, ANIMATING EVERYTHING,Simple

42. Design a 'scrolling text' screensaver, ANIMATINGEVERYTHING, Intermediate

43, Fade-in and fade-out according to the LOD, ANIMATINGEVERYTHING, Intermediate

44, Animate a flight with smoke trail, ANIMATINGEVERYTHING, Intermediate

45, Simulate day and night in shaders, ANIMATINGEVERYTHING, Advanced

46, Create a simple racing game, ANIMATING EVERYTHING,Advanced

47, Build a skeleton system, ANIMATING EVERYTHING, Intermediate

48, Skin a customized mesh, ANIMATING EVERYTHING, Advanced

49, Create and use complex characters, ANIMATINGEVERYTHING, Advanced

50, Let the physics engine be, ANIMATING EVERYTHING, Wow

51, Simulate the rain, CREATING CREATIVE EFFECTS, Simple

52, Simulate the light bulb, CREATING CREATIVEEFFECTS, Intermediate

53, Design a skybox, CREATING CREATIVE EFFECTS, Intermediate

54, Design a mirror reflecting scene objects, CREATINGCREATIVE EFFECTS, Intermediate

55, Create simple water effect, CREATING CREATIVEEFFECTS, Advanced

56, Create a simple cloud cluster, CREATING CREATIVEEFFECTS, Advanced

57, Define a customized state attribute, CREATINGCREATIVE EFFECTS, Intermediate

58, Show the depth buffer as a gray map, CREATINGCREATIVE EFFECTS, Intermediate

59, Implement the night-vision effect, CREATINGCREATIVE EFFECTS, Advanced

60, Implement the depth-of-field effect, CREATINGCREATIVE EFFECTS, Wow

61, Download raster and elevation data, VISUALIZINGTHE WORLD, Simple

62, Configure and build VirtualPlanetBuilder, VISUALIZINGTHE WORLD, Intermediate

63, Generate terrain database for rendering, VISUALIZINGTHE WORLD, Intermediate

64, Patch existing terrain database with newer data, VISUALIZINGTHE WORLD, Intermediate

65, Resume a terrain build process, VISUALIZING THEWORLD, Intermediate

66, Generate terrain database in geocentriccoordinates, VISUALIZING THE WORLD, Intermediate

67, Create the atmosphere around the earth, VISUALIZINGTHE WORLD, Advanced

68, Handle the problems of near and far planes, VISUALIZINGTHE WORLD, Advanced

69, Load the terrain database from Internet, VISUALIZINGTHE WORLD, Simple

70, Use GPU to render terrain data , VISUALIZING THEWORLD, Wow

71, Merge multiple geometries, MANAGING MASS DATA, Intermediate

72, Optmize and compress texture data, MANAGING MASSDATA, Intermediate

73, Share specified objects while loading files, MANAGINGMASS DATA, Intermediate

74, Use occlusion query to cull objects, MANAGINGMASS DATA, Advanced

75, Create the forest, MANAGING MASS DATA, Intermediate

76, Use the draw instanced technique, MANAGING MASSDATA, Advanced

77, Load models in a separate thread, MANAGING MASSDATA, Advanced

78, Configure the database pager, MANAGING MASS DATA,Simple

79, Use spatial index methods to manage models, MANAGINGMASS DATA, Wow

80, Intersect with large scale of models, MANAGINGMASS DATA, Intermediate

81, Understand the rendering window creation process,INTEGRATING WITH GUI, Simple

82, Integrate with MFC windows, INTEGRATING WITH GUI,Intermediate

83, Integrate with X11 windows, INTEGRATING WITH GUI,Intermediate

84, Integrate with Qt widgets, INTEGRATING WITH GUI,Intermediate

85, Embed Qt widgets into 3D scene, INTEGRATING WITH GUI,Advanced

86, Embed CEGUI elements into 3D scene, INTEGRATINGWITH GUI, Advanced

87, Embed 3D scene into the browser, INTEGRATING WITHGUI, Advanced

88, Start the rendering loop in a separate thread, INTEGRATINGWITH GUI, Intermediate

89, Handle scene graph in GUI events, INTEGRATINGWITH GUI, Advanced

90, Use command buffer to interact between GUI andthe 3D scene, INTEGRATING WITH GUI, Wow

91, Read from data stream and record the progress, MISCELLANEOUSDISCUSSION IN DEPTH, Intermediate

92, Use pseudo-loaders to implement specicalfunctionalities, MISCELLANEOUS DISCUSSION IN DEPTH, Intermediate

93, Design own file format with serializers andcompressors, MISCELLANEOUS DISCUSSION IN DEPTH, Advanced

94, Collect the scene statistics, MISCELLANEOUSDISCUSSION IN DEPTH, Intermediate

95, Play with the Delaunay triangulator, MISCELLANEOUSDISCUSSION IN DEPTH, Intermediate

96, Render to multiple targets simultaneously, MISCELLANEOUSDISCUSSION IN DEPTH, Advanced

97, Implement order-independent transparent of models,MISCELLANEOUS DISCUSSION IN DEPTH, Advanced

98, Implement volume rendering for scientificvisualization, MISCELLANEOUS DISCUSSION IN DEPTH, Wow

99, Take a photo of the scene, MISCELLANEOUSDISCUSSION IN DEPTH, Advanced

100, Use OSG applications in other languages, MISCELLANEOUSDISCUSSION IN DEPTH, Wow

该用户从未签到

发表于 2011-4-12 18:05:57 | 显示全部楼层
大家都没有提意见,小弟就抛砖引玉吧。希望锐哥的新书能提供一个基于OSG的实时成像的例子。另外,觉得例子可以分下类。

该用户从未签到

发表于 2011-4-12 20:40:38 | 显示全部楼层
我也提提吧 希望能做个像autocad或3dmax类似的多视图,多视口的例子,动态高亮

该用户从未签到

发表于 2011-4-12 20:50:34 | 显示全部楼层
再补充一个关于大模型显示的例子吧

该用户从未签到

 楼主| 发表于 2011-4-13 13:25:02 | 显示全部楼层
garyliyong提到的两个例子都已经有了,此外分类也是有的,诸如MANAGINGMASS DATA这样的就是每章的标题

CWorld所说的实时成像是什么意思,能否具体说明一下?
  • TA的每日心情
    开心
    2019-11-11 10:36
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2011-4-13 15:15:48 | 显示全部楼层
    恭喜锐兄新作,支持。
    我现在在海外,网速不怎么样,不知道能不能发出去。

    该用户从未签到

    发表于 2011-4-16 10:55:58 | 显示全部楼层
    array我想请教一个问题,为什么最近写的书都是英文的呢,以前出过一本中文的写的很不错的,国内买的人也不少,英文看起来不是很方便,买的话又贵又麻烦的。能不能考虑出版中文的呢?

    该用户从未签到

    发表于 2011-4-18 09:09:58 | 显示全部楼层
    刚看到啊,array真是笔耕不辍,佩服下您的精力!

    该用户从未签到

     楼主| 发表于 2011-4-19 08:14:30 | 显示全部楼层
    回复 7# garyliyong

    写作是需要出版社支持的,当出版社约稿时,我会很乐意承担相应的写作工作,即使利益微薄,也可以借此为开发者提供可见的便利,以及为自己的履历做出积累(比如职称评定等等)。目前没有国内出版社支持我继续出版OSG相关的图书,因此我也无暇考虑这方面的计划,而是优先满足国外出版社和读者的需求

    该用户从未签到

    发表于 2011-4-19 13:53:32 | 显示全部楼层
    是比较遗憾啊,等我毕业了,希望有机会翻译array的英文作品

    该用户从未签到

    发表于 2011-4-19 14:10:39 | 显示全部楼层
    本帖最后由 CWorld 于 2011-4-19 14:12 编辑

    回复 5# array

    很高兴看见array的回帖,不过这个问题我最近也想了想,打算放弃这个需求。     我来描述下这个需求的原因吧,这是源于我看的西电的几篇论文,其中都是使用OGRE做的红外成像仿真的例子,但是我自己知道OGRE作为实验是比较合适的,但是成熟开发应用还缺少很多模块,不过没看到国内OSG做红外成像仿真研究的例子,不过我知道国外是有的。
        所以我想可能是欠缺了实时成像的部分,或者是其他什么东西?所以国内用的不多。
    在OSG的邮件列表里提到了红外仿真的一些做法.http://lists.openscenegraph.org/htdig.cgi/osg-users-openscenegraph.org/2007-August/001397.html.

    我的道行还不够,而且最近在忙别的事情,所以没有去看这个东西,也许这个和OSG的关系不大,或者不是一个小的例子,需要多方面的配合,和可编程着色语言关系比较大。

    该用户从未签到

     楼主| 发表于 2011-4-19 17:00:07 | 显示全部楼层
    我会提供一个夜视效果的例子,红外仿真和它应该有类似之处,而真正投入实际应用的话,重点应该还是在红外像图的构建上,而非最后的渲染

    该用户从未签到

    发表于 2011-4-20 15:58:22 | 显示全部楼层
    回复 12# array

         恩,谢谢锐哥的积极支持!

    该用户从未签到

    发表于 2011-5-5 19:39:20 | 显示全部楼层
    如果把array的书翻译成中文版与大家分享,array不会介意吧

    该用户从未签到

    发表于 2011-5-5 22:53:25 | 显示全部楼层
    欢迎翻译成中文,英语总是看不懂到底说的什么意思

    该用户从未签到

     楼主| 发表于 2011-5-6 08:28:35 | 显示全部楼层
    没什么,呵呵

    该用户从未签到

    发表于 2011-5-6 13:53:55 | 显示全部楼层
    关键是谁会是第一个拿到这本书的肯贡献出来的

    该用户从未签到

    发表于 2011-5-7 09:45:02 | 显示全部楼层
    有些英文翻译起来感觉好像反而没有味道了,呵呵,大家对于翻译多多提提意见哈

    该用户从未签到

    发表于 2011-5-8 11:48:31 | 显示全部楼层
    强烈顶!array精力真旺盛。国内什么东西都要慢一拍。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    OSG中国官方论坛-有您OSG在中国才更好

    网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

    联系我们

    • 工作时间:09:00--18:00
    • 反馈邮箱:1315785073@qq.com
    快速回复 返回顶部 返回列表