Replies: 4 comments 3 replies
-
I have tried getting Chat-GPT4 to create a VSG hello world example and while the code looked "plausible" and got some parts right it made lots of errors in how to do very basic things, and even looked to be conflating something you might do with the OSG rather than the VSG, but likely also stuff it's crawled off other materials. In the I gave up as no matter how much I tried to coax it into do something valid, while it GPT4 might be capable of writing some code examples it was hopeless at doing something helpful for a VSG application. Perhaps over time it'll have more VSG code out there is crawl and mimic. I have been more success on getting to to spot my typos and bad grammar in the online vsgTutorial book I've just started writing. For this I need every help I can get. To paraphrase Michael Jackson, "I'm coder not a writer." |
Beta Was this translation helpful? Give feedback.
-
The Chat-GPT4 output seems pretty typical of what I've seen, though I haven't tried to get it to cough up anything myself. It's all grammatically correct. It's done a good job of summarizing the Wikipedia entry on scene graphs, with maybe some other content thrown in. I don't find the pros and cons very helpful; they could apply to just about any graphics library. It's missed what I consider to be the real advantages of VSG:
But those are very nuanced criteria, and Chat-GPT4 just can't pick those signals out of all the Vulkan and API noise. The statements about the VSG tutorial fall in the category of "hallucinations" (they are actually called that!). You can almost see how it's gotten confused by the actual Vulkan tutorial and all the mentions of Vulkan in VSG materials. |
Beta Was this translation helpful? Give feedback.
-
Has anyone experimented with Github Copilot? Video deep-dive: |
Beta Was this translation helpful? Give feedback.
-
AI is the future L0L
Copilot said: To deep copy a To deep copy a vsg::Node in VulkanSceneGraph, you should use the clone method provided by the vsg::Node class (inherited from vsg::Object). This method uses the copy constructor internally, which takes a CopyOp argument to control the copy behavior. blablabla
Copilot said: You are correct to expect a deep copy, because the VertexIndexDraw copy constructor and clone method use the CopyOp mechanism for arrays and indices. However, whether you get a shallow or deep copy depends on the CopyOp you provide to clone()!
Copilot said: The symbol vsg::CopyOp::DEEP_COPY does not appear in the top 10 code search results for CopyOp in this repository. In the source code for CopyOp (include/vsg/core/Object.h), there is no enum or static constant named DEEP_COPY visible in the results. The CopyOp class is defined as a functor for copying (with template operator overloads), but no DEEP_COPY constant is shown. blablabla
You are right to question the previous answer—I made an incorrect assumption about the existence of vsg::CopyOp::DEEP_COPY. After searching the VulkanSceneGraph source, there is no such constant or enum named DEEP_COPY in the CopyOp class or elsewhere in the repo. blablabla |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Here's a couple of questions I've tried so far:
RO: What is a scene graph?
A scene graph is a data structure used in computer graphics and 3D modeling to represent a hierarchical organization of objects in a scene.
A scene graph typically contains nodes that represent various elements of the scene, such as geometry, lights, cameras, and transformations. These nodes are connected together in a tree-like structure, where each node may have one or more child nodes.
The structure of the scene graph reflects the relationships between the objects in the scene. For example, a car model might have a parent node representing the car body, with child nodes representing the wheels, seats, and steering wheel.
Scene graphs are used in a variety of applications, including video games, virtual reality, and animation. They provide a convenient way to manipulate the objects in a scene and to apply transformations such as translation, rotation, and scaling. Additionally, scene graphs can be used to optimize rendering performance by culling objects that are not visible to the camera or by grouping objects with similar rendering properties.
What are the pros and cons of the VulkanSceneGraph?
The VulkanSceneGraph (VSG) is a scene graph library for the Vulkan graphics API. Like any software library, VSG has its own set of pros and cons, which I will outline below:
Pros:
Cons:
**RO: Which is pretty impressive. I'm working on the tutorial book right now, so I asked it : What is the vsgTutorial? **
vsgTutorial is a collection of code examples and tutorials designed to help developers learn how to use the VulkanSceneGraph (VSG) library. It covers a wide range of topics, from basic concepts such as creating a window and rendering a triangle, to more advanced topics such as multithreading and scene culling.
The vsgTutorial is available as part of the VSG repository on GitHub and is open source, allowing developers to study and modify the code as needed. It is designed to be accessible to developers with varying levels of experience, and each tutorial includes detailed explanations of the concepts and code used.
The vsgTutorial is organized into a series of chapters, with each chapter covering a specific topic. Each chapter contains multiple examples, with each example building upon the concepts and code introduced in the previous example.
Some of the topics covered in the vsgTutorial include:
Overall, the vsgTutorial is a valuable resource for developers who want to learn how to use the VulkanSceneGraph library to create high-performance graphics applications.
RO: Which is more wishful thinking at this point as I've only finished a draft of the first chapter so far and haven't yet tackled any of the above topics!
Beta Was this translation helpful? Give feedback.
All reactions