There are no specific naming convention. You can name SNS Topics and SQS Queues however you like, as long as it doesn't complain (eg spaces or illegal characters).
Be aware that, over time, you might have many topics and many queues, and they form part of the ARN so they will be hard to change in future. I would recommend a prefix for the application, and a descriptive portion. For example, if the unicorn application is pushing an invoice to a queue, call the queue:
Don't include 'topic' or 'queue' in the name as they are irrelevant (eg unicorn_invoice is better than unicorn_invoice_queue).
If many different teams are using the same AWS account, you could add an additional tier to indicate who 'owns' the resource, such as:
CamelCase is also fine, if that is common in your company: